Every post in Ship It Showcase is a win worth celebrating. If it’s deployed and working, it’s ready to share.
Why Share Your Build
Sharing your deployed app matters more than you might think:Proof of Work
Your live URL is proof of work — more valuable than any certificate you could earn.
Community Learning
Sharing your process helps other builders learn from your approach, shortcuts, and mistakes.
Better Feedback
Community feedback sharpens your instincts and makes your next build faster and better.
Portfolio Building
Every app you ship and share builds your portfolio and credibility as a builder.
How to Post a Showcase
Deploy Your App
Get your app live with a real URL using GitHub Pages (Beginner) or Vercel (Intermediate/Advanced). See the Ship It guides for deployment instructions.
Prepare Your Post
Take a screenshot of your app showing the main screen or your favorite feature. Posts with screenshots get significantly more engagement.
Fill the Template
Use the showcase template below to share your app details, build process, and what you learned.
Showcase Post Template
Copy this template and fill in your details:Showcase Examples
Here are examples at each complexity level to use as benchmarks:Example: Beginner Build - The Focus Timer
Example: Beginner Build - The Focus Timer
Blueprint: PT-01 The Focus Timer
Niche: Productivity
Complexity Level: Beginner
Live URL: https://janedoe.github.io/focus-timer
Niche: Productivity
Complexity Level: Beginner
Live URL: https://janedoe.github.io/focus-timer
What It Does
A Pomodoro timer that tracks your focus sessions and shows your daily session count. Simple app, but I actually use it every day now — which is the real test.My Favorite Feature
The animated countdown ring. When the timer is running, a circular SVG progress ring fills up as time elapses. It was one extra prompt to Claude and it made the whole app feel polished instead of just functional.How I Built It
- AI Tool: Google AI Studio
- Build Time: About 2.5 hours
- Biggest Challenge: The timer kept stopping when I switched to another browser tab.
- How I Solved It: Learned that setInterval is throttled in background tabs. The fix was storing the start timestamp and calculating elapsed time on each tick instead of counting ticks. One Stack Overflow thread and one Claude prompt sorted it.
What I Learned
localStorage is incredibly powerful even for a “simple” app. Also learned the hard way that testing on mobile from the start saves a lot of pain at the end.What’s Next
Going to add a weekly summary view, then try upgrading to Intermediate with Vercel deployment and separate CSS and JS files.Example: Intermediate Build - The Habit Forge
Example: Intermediate Build - The Habit Forge
Blueprint: PD-02 The Habit Forge
Niche: Personal Development
Complexity Level: Intermediate
Live URL: https://habit-forge-delta.vercel.app
Niche: Personal Development
Complexity Level: Intermediate
Live URL: https://habit-forge-delta.vercel.app
What It Does
A habit tracker with visual streak grids, weekly review summaries, and habit categories. Tracks up to 10 habits with satisfying check-off animations. I’ve been dogfooding it for two weeks and it’s actually changing my behavior.My Favorite Feature
The streak visualization. Seeing those green squares fill in is genuinely motivating — more so than any habit app I’ve paid for. Small visual feedback loops are powerful.How I Built It
- AI Tool: Google AI Studio
- Build Time: About 6 hours across 3 sessions
- Biggest Challenge: Getting the calendar grid to render correctly across months with different day counts and different starting weekdays.
- How I Solved It: Broke the problem into two parts — first figure out what day of the week the month starts, then calculate offset empty cells before day 1. Once I described it that way to AI Studio, it generated clean logic.
What I Learned
How to structure a multi-file project properly so it doesn’t become unmaintainable. How CSS Grid makes complex layouts manageable without fighting floats. How Vercel auto-deploys when you push to GitHub, which made iteration much faster.What’s Next
Want to add CSV export so users can keep their data. After that, exploring the Advanced path with Supabase to sync habits across devices.Example: Advanced Build - The Freelance Command Center
Example: Advanced Build - The Freelance Command Center
Blueprint: WB-03 The Freelance Command Center
Niche: Wealth
Complexity Level: Advanced
Live URL: https://freelance-command.vercel.app
Niche: Wealth
Complexity Level: Advanced
Live URL: https://freelance-command.vercel.app
What It Does
A full client and project management dashboard for freelancers. Track clients, move projects through pipeline stages, generate invoices, and visualize revenue over time. Uses Supabase for auth and database. This one feels like a real product.My Favorite Feature
The invoice generator. Click “Generate Invoice” on any project, it pulls the client info and project details automatically, and renders a clean printable invoice view. No manual data entry. Built it in one session once I had the data model right.How I Built It
- AI Tool: Claude Code
- Build Time: About 14 hours across a week
- Biggest Challenge: Authentication with Row Level Security. It’s one thing to know RLS exists, another to set it up so the policies actually behave correctly for your data model.
- How I Solved It: The CLAUDE.md security rules were the turning point. Following the server-action pattern and never accessing the database from the frontend meant I could use service_role cleanly and stopped chasing weird auth bugs.
What I Learned
Row-level security is a game changer once it clicks. Server actions instead of client-side database calls is not just a best practice — it’s the difference between a secure app and a vulnerable one. Zod validation is not optional.What’s Next
Adding Stripe for actual payment processing. This one might become a real product.Tips for a Great Showcase Post
Include a Screenshot
Posts with visuals get significantly more engagement. You don’t need beautiful design — a screenshot of a working app is enough.
Be Specific About Challenges
“It was hard” teaches nothing. “The timer stopped in background tabs because setInterval pauses” teaches everyone who reads it.
Share Your Build Time
It encourages other builders to see what’s realistic and removes the feeling that everyone else builds faster.
Link to the Blueprint
If you followed a blueprint, name it. Your post becomes a case study for that blueprint.
Respond to Comments
When people take time to give feedback or ask questions, reply. That turns a post into a conversation.
Don't Wait for Perfection
If it’s deployed and working, it’s ready to share. Ship ugly, share proudly, iterate publicly.
App of the Week
The highest-visibility recognition in the community — weekly celebration of the best community-built app.How It Works
Friday: Nominations Open
After Ship It Friday class, the nomination thread opens. Community members nominate standout apps from the week’s Ship It Showcase posts.Nomination format:
Saturday: Community Voting
The voting thread opens with all nominated apps. Community votes via reactions or replies to select the winner.
Only admins create the nomination, voting, and winner announcement threads. All member participation happens as replies within those threads.
What Makes a Winning App
The judging criteria used for App of the Week:| Criteria | Weight | What We Look For |
|---|---|---|
| Completion | 30% | Does it work? Is it deployed? All requirements met? |
| Creativity | 25% | How original is the approach? Did they go beyond the blueprint? |
| Design | 20% | Does it use the niche palette? Is it clean and usable? |
| Effort | 15% | Did they push themselves? Is it their best work? |
| Community | 10% | Did they help others? Share tips? Encourage fellow builders? |
What Happens After You Post
When you share your app in Ship It Showcase:- Community members comment, celebrate, and give you real feedback
- Great showcase posts may be nominated for App of the Week
- DESI may feature your app in a live class or community newsletter
- Your post becomes a permanent reference for other builders in your niche
- You become someone who ships — and that reputation compounds over time
Feedback Etiquette
When commenting on someone else’s showcase post:Be specific
“Looks great” is kind. “The color scheme feels really professional — the contrast between the dark header and light card backgrounds works well” is useful.
Offer actionable suggestions
“Have you tried adding a loading state when the data fetches?” is a gift. Make sure it’s genuinely helpful.
Ask questions
“How did you handle the date formatting across time zones?” helps the poster reflect and helps everyone learn.
Every person posting in the showcase took a risk. Honor that.
Next Steps
Blueprint Challenges
Join weekly competitions and build with deadlines
Blueprint Lab
Share custom blueprints and discover community creations
Community Overview
Explore all community channels and the builder’s journey
Ship It
Learn how to deploy your apps in 6 steps