Market
Pricing
Sign inStart
Field GuideUse cases
Use cases

Developer portfolio design: a site that shows taste

A developer portfolio is judged on the code you link to and the care you visibly took. Here is a structure, a hero background you can paste, project cards that read fast and link previews that look finished.

GradientlyVerified Gradiently account·October 1, 2026·5 min read
Cover: Sustained Static · GR·9AAV·PS

The short version

  • A strong developer portfolio has four parts: a short hero that says what you build, three to six project cards, a brief about section and an easy way to get in touch.
  • A hero background made from layered CSS gradients loads instantly and shows visual taste without a heavy image.
  • Each project card should state the problem, what you built and the result, with links to the live project and the code.
  • A 1200×630 Open Graph image makes your portfolio link look finished when it is shared in applications, chats and social posts.
  • Fewer, better explained projects make a stronger portfolio than a long grid of tutorials.
On this page
The structure of a developer portfolioA hero background that shows tasteProject cards that explain impactOpen Graph images for your portfolioWriting the about and contact sectionsSmall details that read as taste

A good developer portfolio is a small, fast site with four parts: a hero that says in one line what you build, three to six project cards that explain the problem and your part in solving it, a short about section, and a contact link. Taste shows in the details: a calm hero background, consistent cards, readable type and a link preview that looks finished when a recruiter pastes your URL into a hiring channel. You don't need a framework showcase. You need a page that is obviously cared for.

The structure of a developer portfolio

HeroYour name and what you build

Keep it to

One line, one supporting sentence
ProjectsProof you can ship

Keep it to

Three to six cards
AboutHow you work, what you want next

Keep it to

A short paragraph
Writing or talks

What it does

Shows how you think (optional)

Keep it to

Three links
ContactMakes the next step easy

Keep it to

Email, GitHub, LinkedIn
SectionWhat it doesKeep it to
HeroYour name and what you buildOne line, one supporting sentence
ProjectsProof you can shipThree to six cards
AboutHow you work, what you want nextA short paragraph
Writing or talksShows how you think (optional)Three links
ContactMakes the next step easyEmail, GitHub, LinkedIn
One page is enough for most developers. Add project pages only for work that deserves a longer story.

Say what you build, not what you are. "I build fast checkout flows for online shops" tells a reader more than "Full stack developer". If you are early in your career, "I build accessible web apps with React and Postgres" is honest and specific. Hero section design has more on writing that first line.

A hero background that shows taste

Many portfolios either use a flat white page or a heavy animated background that delays everything else. A middle path is a layered CSS gradient: two or three soft radial blooms over a dark or pale ground. It is a few lines of code, has no network cost and still looks considered. Website hero background and CSS mesh gradient go further.

Deep indigo hero groundradial-gradient(ellipse at 20% 15%, #3b2a8f 0%, #0e1020 55%, #07080f 100%)
The base layer: a single indigo bloom fading into near black. Calm enough for white text anywhere on it.
css
.hero {
  min-height: 70vh;
  color: #f4f4f8;
  background:
    radial-gradient(ellipse 60% 50% at 80% 10%, rgb(56 189 248 / 0.28), transparent 70%),
    radial-gradient(ellipse 50% 60% at 15% 20%, rgb(124 58 237 / 0.45), transparent 70%),
    linear-gradient(180deg, #0e1020 0%, #07080f 100%);
}

.hero h1 {
  font-size: clamp(2.25rem, 5vw, 4rem);
  line-height: 1.05;
  max-width: 18ch;
}
A two bloom hero in plain CSS. Keep the brightest bloom away from where the headline sits so the words stay readable.

If you want motion, animate slowly, keep the words still and respect prefers-reduced-motion; reduced motion explains how. A little grain on top hides banding on large dark gradients, covered in CSS noise texture.

Project cards that explain impact

A project card has seconds to justify a click. Give each one the same four parts: a title, a one sentence problem, what you built and the outcome, then links to the live project and the code. Outcomes don't need to be dramatic. "Used by our 30 person team every day" or "Cut page load from 4 s to 1.2 s" are fine when they are true and yours.

Weak card

  • "Weather App" with a screenshot
  • A list of eight technologies
  • No idea what you personally did
  • A dead demo link

Strong card

  • "Rota: shift swaps for a café team"
  • The problem in one sentence
  • Your part and one measurable result
  • Working live link and a tidy repository
css
.projects {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
  gap: 1.5rem;
}

.card {
  border-radius: 1rem;
  padding: 1.5rem;
  background: linear-gradient(160deg, #161a2e 0%, #0f1222 100%);
  border: 1px solid rgb(255 255 255 / 0.08);
}

.card img {
  aspect-ratio: 16 / 10;
  width: 100%;
  object-fit: cover;
  border-radius: 0.5rem;
}
A responsive card grid. A fixed image aspect ratio keeps every card the same shape even when screenshots differ.

Screenshots look more finished when they sit on the same background. Place each one on your hero ground with a little padding rather than showing raw browser captures of different sizes.

Open Graph images for your portfolio

Your portfolio link will be pasted into job applications, recruiter messages, Slack channels and social posts. Each of those shows the Open Graph image, 1200×630 pixels. A blank card or a cropped screenshot undoes the care you put into the site. Make one for the home page and, if you have project pages, one per project in the same layout. Dynamic OG images shows how to generate them at build time; Open Graph image size covers the crops.

Maya Okafor
I build fast checkout flows for online shops

The home page preview: name and the one line, nothing else.

Project
Rota
Shift swaps for a café team
Gradiently · @gradiently

A project page preview in the same layout and background.

Writing the about and contact sections

Keep the about section to a short paragraph in the first person: what you enjoy building, how you like to work, and what you are looking for next. A sentence about life outside code is fine; a full biography is not. End the page with one obvious way to reach you, usually an email address written out in full, plus GitHub and LinkedIn. A contact form adds friction for a recruiter who just wants to copy your address into a message. If you are applying for design minded roles, personal branding helps you keep the site, CV and profiles in one look.

Small details that read as taste

  • One typeface family, two weights. A good sans for everything, a monospace for code only.
  • A measure of 60 to 75 characters for body text, so paragraphs are comfortable to read.
  • Real contrast: body text should pass WCAG AA against its background.
  • A favicon that matches the hero colours.
  • Fast load: a portfolio for a developer that takes four seconds to appear makes its own argument.
  • A dark and light theme only if you will maintain both properly.

If you'd rather not draw the preview images and screenshot frames by hand, Gradiently can make them on a Mark, a living gradient background that keeps your words readable, and with Pro resize one design to the link preview, a LinkedIn post and an X header in one step. It can also be connected to ChatGPT and Claude, so you can ask for a set of project previews while you write the case studies.

Connect your AI assistant

Let Claude or any MCP client search Marks and make designs that open in the Studio.

Read the developer docs

Questions people ask

What should a developer portfolio include?

A one line hero about what you build, three to six project cards with problem, solution and result, a short about section and contact links. Link to live projects and their code.

How many projects should be in a developer portfolio?

Three to six well explained projects are stronger than a long grid. Choose work that shows the kind of job you want next.

What size should a portfolio Open Graph image be?

1200×630 pixels. Keep the name and the one line description in the centre so nothing is cropped in square previews.

Should a developer portfolio have an animated background?

Only if it is subtle, does not delay the page and respects reduced motion settings. A layered CSS gradient gives the same polish at almost no performance cost.

Share this guide

Written by GradientlyVerified Gradiently account

The team behind Gradiently, a design tool built around Marks: living gradients that make everything you design look like yours.

See our profile

On this page

The structure of a developer portfolioA hero background that shows tasteProject cards that explain impactOpen Graph images for your portfolioWriting the about and contact sectionsSmall details that read as taste

Share this guide

Next in Use cases

Design portfolio tips: presenting work so it gets you hired

Keep reading

All Use cases guides
Backgrounds

Website hero background: gradients that look rich and load fast

5 min read

The hero is where a site makes its first impression, and where it most often gets slow. A gradient hero can be both the richest and the lightest thing on the page, if you build it the right way.

CSS and web

Dynamic OG images: generate link previews automatically

6 min read

Hand-making a preview image for every page doesn't scale, and one generic image for the whole site wastes the most-seen picture you have. Generate them instead.

CSS and web

Hero section design: the first screen of your website

5 min read

Visitors decide whether to stay before they scroll. The hero is where they decide, so every word and pixel in it should earn its place.

Find the look that’s only yours.

Every Mark is a living background with one owner. Try an unclaimed Mark, and claim yours when it feels right.

Start designing

Check a certificate

Type a certificate number or a Mark’s code to see who owns it.

Works with ChatGPT and Claude

Ask your AI for a design. It makes it in your Mark, ready to edit.

ChatGPTClaude
How to connect

Product

  • Market
  • Explore
  • Pricing
  • Certificates

Learn

  • Field Guide
  • Help centre
  • What’s new

Developers

  • Overview
  • ChatGPT and Claude
  • API reference
  • API keys

Company

  • About
  • Contact us
  • Sign in

Legal

  • Terms
  • Privacy
  • Refunds
  • Mark protection
  • Cookies
  • All policies
Move through the letters. Each one wears a real Mark.Touch a letter to see its Mark.One name. Ten Marks inside it.
© 2026 Gradiently