Open source

DevFrame is open for focused, practical contributions.

The best contributions improve the developer portfolio workflow without fragmenting the architecture: one portfolio record, one renderer path, reusable templates, and a calm dark-first product system.

DevFrame system map

The same App Router shell powers marketing, Studio, Builder, Dashboard, and public portfolio routes.

Repo

DevFrame

Free and open-source

Issues

GitHub

Bug reports and tasks

Ideas

Discussions

Roadmap and templates

Validation

Lint + build

Expected before PRs

Local setup

Run DevFrame locally

The project is designed to be useful even before you wire production services.

Leave Clerk and Supabase empty when you only need demo-mode UI work.
Add Clerk and Supabase keys when validating auth, uploads, and persisted portfolio records.
Use the existing shadcn-style primitives, dark-first surfaces, and route groups.
npm install
cp .env.example .env.local
npm run lint
npm run build

Issues

Report focused problems

Good issues include enough context for another contributor to reproduce the behavior.

Include the route, template, browser, expected behavior, actual behavior, and screenshots if the issue is visual.
For persistence bugs, state whether you are in demo mode, preview cookie fallback, or Supabase mode.
For upload bugs, include file type, size, and whether the issue happens before or after signed upload creation.

Pull requests

Keep contributions small

DevFrame favors focused patches that preserve the shared architecture.

Do not add per-template database tables.
Do not special-case templates in `PortfolioRenderer`.
Run lint and build before opening a pull request.
Avoid paid-tier or payment API logic in the core app.

Templates

Contribute portfolio templates

Templates should feel distinct while consuming the same portfolio record shape.

Add catalog metadata in `src/lib/template-catalog.ts`.
Register rendering through `src/templates/registry.ts`.
Add template settings through `src/lib/template-field-registry.ts` when needed.
Preserve profile images, gallery assets, projects, experience, and custom sections across swaps.

Roadmap

Help with planned work

Useful contributions can land across docs, templates, Studio, Builder, Dashboard, and deployment workflow.

More portfolio templates and preview examples.
GitHub/project import experiments.
Custom domain and analytics design explorations.
Better issue templates and contribution docs.

Community

Support the project

DevFrame grows through real usage, clear feedback, and practical code or documentation improvements.

Star the repository if the project is useful.
Use discussions for feature requests and template ideas.
Use issues for reproducible bugs.
Optional donation QR codes live on the Support page.

Start with https://github.com/RegieSanJuan/DevFrame/issues for bugs or https://github.com/RegieSanJuan/DevFrame/discussions for ideas. Keep patches narrow, describe the route or template affected, and preserve demo mode whenever possible.