An open-source, community-driven directory of developer portfolios. Browse talented engineers, designers, and creators — and add your own.
Developer Website Ideas is a curated, searchable gallery of developer portfolio websites. It's:
- Open source — the full source code is public and contributions are welcome
- Community driven — anyone can add their portfolio via a pull request
- Simple — portfolio data lives in a single
WEBSITES.mdfile; no database required - Fast — built with Angular + SSR for speed and great SEO
See CONTRIBUTING.md for the full guide. The short version:
- Fork this repo
- Add your entry to
public/WEBSITES.md:Website Name | Website URL | Owner | Work Title | Source Code Link (optional) - Open a pull request
The data file lives at public/WEBSITES.md. Each line represents one portfolio:
John Doe | https://johndoe.dev | John Doe | Full-Stack Developer | https://github.com/johndoe/portfolio
Jane Smith | https://janesmith.io | Jane Smith | Frontend Engineer |
| Field | Required | Notes |
|---|---|---|
| Website Name | Yes | Display name for the site |
| Website URL | Yes | Must start with https:// |
| Owner | Yes | Full name or handle |
| Work Title | Yes | Used for filtering (e.g. "Full-Stack Developer") |
| Source Code Link | No | Leave empty if private |
Lines beginning with # are treated as comments and ignored.
| Layer | Technology |
|---|---|
| Framework | Angular 21 with SSR |
| Styling | SCSS with CSS custom properties |
| Rendering | Angular Universal (Server-Side Rendering) |
| Data | Flat Markdown file (WEBSITES.md) |
| Fonts | Inter + JetBrains Mono (Google Fonts) |
- Node.js 20+
- npm 9+
# Clone the repo
git clone https://github.com/victorovento/developer-website-ideas.git
cd developer-website-ideas
# Install dependencies
npm install
# Start the dev server
npm startOpen http://localhost:4200.
npm run build
node dist/developer-website-ideas/server/server.mjsThis project is built for SSR. You can deploy to:
- Node.js server — run
node dist/developer-website-ideas/server/server.mjs - Docker — build the app, copy
dist/, setNODE_ENV=production, expose port 4000 - Vercel / Render / Railway — set build command to
npm run buildand start command tonode dist/developer-website-ideas/server/server.mjs
After deploying, update the canonical URL and Open Graph URLs in src/index.html with your production domain.
developer-website-ideas/
├── public/
│ ├── WEBSITES.md # Portfolio data — edit this to add entries
│ └── robots.txt
├── src/
│ ├── app/
│ │ ├── components/
│ │ │ ├── filter-bar/ # Search & filter UI
│ │ │ └── portfolio-card/ # Individual portfolio card
│ │ ├── pages/
│ │ │ └── home/ # Main directory page
│ │ └── services/
│ │ └── portfolio.service.ts # Parses WEBSITES.md
│ ├── index.html # SEO meta tags & fonts
│ └── styles.scss # Global design tokens
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
└── README.md
Contributions beyond adding portfolios are also welcome! Bug fixes, accessibility improvements, performance optimizations, and new features are all appreciated.
Please read CONTRIBUTING.md and CODE_OF_CONDUCT.md before submitting.