Guides
How to showcase unfinished projects
Unfinished projects can still be valuable proof of work when you explain them clearly. The goal is not to pretend they are complete. The goal is to show what you are building, what progress exists, and what you are learning from the process.
A project does not become useless just because it is unfinished. Many developers learn the most from projects that are still messy, active, changing, or incomplete.
Do not hide every unfinished project
Many developers wait too long before showing their work. They think a project must be polished, deployed, beautifully designed, and fully finished before it deserves to be public.
That mindset can slow you down.
If a project is teaching you something, solving a real problem, or showing meaningful progress, it can be worth showcasing as a live project.
Unfinished does not mean worthless. Unclear is the real problem.
Use a live project instead of pretending it is finished
The correct way to show an unfinished project on Devmaniac is to create a live project.
A live project tells visitors that the work is still active or evolving. This makes the project honest from the beginning.
Instead of saying:
This is my completed production-ready app.
Say:
This is an active project I am building to learn backend architecture, authentication, and project journaling.
That is honest. It sets the right expectation and still shows value.
What unfinished projects can prove
An unfinished project can still prove useful skills.
It can show:
- You can start a real project from an idea
- You can plan features and structure work
- You can use a tech stack in a real context
- You can debug and improve over time
- You can explain technical decisions
- You can respond to feedback
- You can build consistently
A finished project proves completion. An unfinished live project can prove momentum.
Step 1: Make the status clear
The first rule is honesty. Make it clear that the project is still being built.
Good status labels include:
- Idea
- Planning
- Building
- In progress
- Paused
- Testing
- MVP in progress
Do not label an unfinished project as complete just to make it look more impressive. That backfires fast.
Step 2: Explain what already works
Visitors should quickly understand what part of the project exists right now.
Explain the current working parts:
- The backend is connected
- The authentication flow works
- The UI is partially designed
- The database models are ready
- The first API routes are complete
- The app is deployed but still missing features
This makes the project feel real instead of vague.
Step 3: Explain what is missing
A strong unfinished project does not hide gaps. It names them.
You can write:
The project currently has authentication, project creation, and profile pages. I still need to add notifications, better search, and mobile improvements.
That kind of honesty helps people understand the stage of the project.
Step 4: Add your goal
Your project goal explains why the unfinished project matters.
A good goal answers:
- What are you building?
- Who is it for?
- What problem are you trying to solve?
- What would make the project successful?
I am building a live project tracker for developers who want to document coding progress and turn ongoing work into public proof of skill.
A clear goal makes an unfinished project easier to respect.
Step 5: Show progress with journals
Journals are what make unfinished projects powerful on Devmaniac.
Without journals, an unfinished project may look abandoned. With journals, it becomes a visible timeline of progress.
Useful journal updates include:
- Initial idea and project setup
- Backend structure created
- Authentication connected
- Database schema changed
- Profile page redesigned
- Bug found and fixed
- Feature paused or changed after feedback
- First deployment attempt
The project does not need to be done. It needs to show movement.
Step 6: Add screenshots or images
Images can help unfinished projects feel more understandable.
Use screenshots to show:
- Current UI
- Early wireframes
- Dashboard progress
- Bug screenshots
- Before and after changes
- Architecture diagrams
The design does not need to be perfect. Just make sure the image helps explain the project.
Step 7: Link to GitHub if useful
If your code is public, link to GitHub.
A GitHub link can help others inspect the actual work. But if the repo is messy, that is okay. Add context in the project description.
The repo is still being actively developed, so some parts may change as I improve the architecture.
That is much better than pretending the code is perfect.
Step 8: Say what you are learning
Unfinished projects are especially useful for showing learning.
You can document:
- A new framework you are learning
- A backend concept you are practicing
- A database design choice
- A deployment lesson
- A product decision from feedback
- A mistake you made and corrected
This turns the unfinished project into a learning record, not just an incomplete app.
Step 9: Avoid fake polish
Do not oversell the project.
Avoid phrases like:
- Production-ready platform
- Enterprise-grade system
- Revolutionary AI app
- Complete full-stack solution
unless the project truly deserves those words.
Better wording:
- Early MVP
- Work in progress
- First prototype
- Learning project
- Currently being improved
Honest wording builds trust. Fake polish creates suspicion.
Step 10: Know when not to showcase it
Not every unfinished project should be public.
You may want to keep a project private if:
- It contains private user data
- It exposes API keys or secrets
- It is too vague to explain yet
- It is only a tiny throwaway test
- You do not have permission to share it
- It creates security or privacy risk
Showing work is good. Leaking chaos is not. Be public with progress, not careless with sensitive information.
Simple unfinished project template
Use this structure when writing your live project description:
I am building [project] to solve [problem]. The project is currently [status]. So far, I have completed [working parts]. I still need to work on [missing parts]. I am using [tech stack] and documenting progress as I build.
Example:
I am building a developer portfolio tracker to help builders document ongoing projects. The project is currently in MVP stage. So far, I have completed authentication, profile setup, live project creation, and basic journal posts. I still need to improve search, notifications, and mobile experience. I am using Next.js, FastAPI, PostgreSQL, Clerk, and Cloudinary while documenting progress as I build.
Common mistakes
Avoid these mistakes when showcasing unfinished projects:
- Pretending the project is finished
- Not explaining the current status
- Adding no progress updates
- Using vague titles like “test app”
- Listing fake technologies
- Hiding all blockers or missing features
- Creating many unfinished projects and updating none
One honest unfinished project with real updates is stronger than ten abandoned mystery folders.
The core idea
An unfinished project should answer:
What am I building, what already works, what is still missing, and what progress am I making?
If your unfinished project answers that, it can become strong proof of work.