Upstream is a portfolio for developers whose best work lives in other people's repositories.
14 routes for engineers, open source contributors and freelance developers: home, open source, projects with case studies, blog, uses, privacy and 404, plus RSS, sitemap and robots.txt.
Open source, with the receipts
Most portfolio themes give open source a row of logos. Upstream gives it the top of the page. Each project shows its stars, how many of your pull requests were merged and your role on it (contributor, maintainer or core team). Open a project and the pull requests behind the numbers appear, each with its title, number, merge date and a diff bar of lines added and removed, the way code review tools show it.
It is built on the native <details> element, so it works with the keyboard and with JavaScript turned off. The hero carries the same idea: a stack of merged pull request cards drawn from your own data.
Projects that look finished on day one
Every project gets a case study page written in Markdown, a facts panel (role, year, status, a headline number, stack) and a link to the next project. Covers are generated in SVG from four patterns and follow your accent colour and the theme, so the projects page looks complete before you have taken a single screenshot.
Everything else a developer portfolio needs
- Experience timeline, newest first, with the current role marked and each role's highlights in Markdown
- Blog with MDX, dual theme code highlighting, reading time, an "On this page" contents list, related posts and RSS
- Uses page for your desk, editor, apps and services
- Toolbox with a 52 week activity chart and your stack
- FAQ for clients, emitted as FAQPage structured data so search and answer engines can quote it
- A large statement section whose words light up one at a time as they scroll into view
- Final call to action that repeats the hero's, with a copy email button
Every number is yours to set
There are no API calls, tokens or build time fetches. Stars, merged counts, stats and the activity chart are plain values in project's data files, so the site builds offline, never breaks when a third party rate limits you, and shows exactly what you choose.










