DEV Community

MaxxMini
MaxxMini

Posted on

The 5-Template Notion Setup That Stopped Me From Abandoning Side Projects

Managing side projects across GitHub issues, random docs, and mental notes is a recipe for abandoned repos.

After shipping 28+ projects, I built a Notion-based system that actually keeps things on track. Here's the exact setup.

The Problem: Developer Project Sprawl

Every developer I know has:

  • 5+ abandoned repos with "I'll finish this later" energy
  • TODO lists in 3 different apps
  • No idea which project is closest to being shippable
  • Bugs reported in DMs they'll never find again

The fix isn't more discipline. It's a single workspace that matches how you actually work.

The 5-Template System

1. Project Dashboard (The Command Center)

One page that answers: What's the status of everything?

Project Status Priority Last Touched Next Action
CLI tool 🟡 In Progress High Today Write tests
Blog engine 🔴 Blocked Medium 3 days ago Fix auth bug
Game prototype 🟢 Shipped Low Last week Monitor feedback

Key properties:

  • Status (Not Started → In Progress → Blocked → Shipped → Archived)
  • Priority (High/Medium/Low)
  • Last Touched date (auto-sorts by staleness)
  • Next Action (always know what to do next)

2. Sprint Tracker (Weekly Focus)

The dashboard shows everything. The sprint tracker forces you to pick 3 things this week.

Week of March 3, 2025
━━━━━━━━━━━━━━━━━━━

🎯 Sprint Goal: Ship v1 of CLI tool

Tasks:
☑ Write unit tests for parser
☐ Add --verbose flag
☐ Update README with examples

Carry-over from last week:
☐ Fix edge case in config loader
Enter fullscreen mode Exit fullscreen mode

The rule: If it's not in this week's sprint, it doesn't exist. Everything else goes to the backlog.

3. Bug Tracker

Not Jira. Not Linear. Just a Notion database with:

  • Title: What's broken
  • Severity: 🔴 Critical / 🟡 Annoying / 🟢 Cosmetic
  • Steps to Reproduce: (force yourself to write this)
  • Status: Open → Investigating → Fixed → Verified
  • Related Project: linked to the dashboard

When someone reports a bug in Discord? Copy it here in 10 seconds. Now it exists in your system, not in your memory.

4. API Reference

Every project that talks to an API gets a page:

## Stripe API
Base URL: https://api.stripe.com/v1
Auth: Bearer token (stored in .env)

### Endpoints I Actually Use
POST /charges — Create a charge
GET /customers/:id — Get customer details
POST /refunds — Process refund

### Gotchas
- Rate limit: 100/sec (never hit it, but good to know)
- Webhook signatures use raw body, not parsed JSON
Enter fullscreen mode Exit fullscreen mode

Beats searching through docs every time. Build it as you go — don't try to document everything upfront.

5. Learning Log

## 2025-03-04
Learned: Playwright's `page.wait_for_load_state('networkidle')` 
times out if there are long-polling connections. 
Use 'domcontentloaded' instead.

Applied to: Browser automation project
Source: Stack Overflow + trial and error
Enter fullscreen mode Exit fullscreen mode

Why this matters: You solve the same problems repeatedly if you don't write down the solution. Future-you will thank present-you.


Want the ready-made templates? I packaged all 5 as a Notion template pack you can duplicate in one click — free, name your price.


Setup Tips

Start with the Dashboard. Everything else links back to it.

Use Notion's "Relation" property to connect bugs → projects, sprints → projects, and API refs → projects. One click shows you everything related to a project.

Template buttons save time. Create a "New Bug Report" template with pre-filled severity and status fields. Filing a bug should take < 30 seconds.

Review weekly. Every Friday, spend 10 minutes:

  • Archive anything you've decided not to finish (this is healthy, not failure)
  • Update statuses
  • Pick next week's sprint items

Why Notion Over [Insert Tool]?

  • Free tier is generous — unlimited pages, no per-seat pricing for personal use
  • Flexible — databases, kanban, calendar, all in one
  • Offline access — works without internet (mobile app caches)
  • API available — automate with scripts if you want to get fancy later

The point isn't that Notion is perfect. It's that one imperfect system beats five perfect tools you use inconsistently.

What This Changed For Me

Before: 5 abandoned projects, scattered notes, constant context-switching guilt.

After: I know exactly what's in progress, what's blocked, and what I'm ignoring on purpose. The "ignoring on purpose" part is underrated — it's intentional, not forgotten.

The system doesn't make you productive. It makes the cost of chaos visible, which naturally pushes you toward finishing things.


Building in public at MaxDevTools on Gumroad. Developer tools, templates, and playbooks — most are free.

Top comments (0)