Back to all resources

ShellScholars: One Link, Many Versions of You

shellscholars.com
ShellScholars: One Link, Many Versions of You

Overview

Proof of work, not proof of posting

ShellScholars is a portfolio builder. Instead of a static resume or a LinkedIn profile you don't fully control, you get one link - your shell - that shows the right person the right proof. A recruiter, a friend, and a stranger can each open the same URL and see a version tailored to them. One link · many versions of you.

Why it exists

Every tool people use to represent themselves fails at the same job: none of them let you control what a specific audience sees. A recruiter, a client, and a curious stranger arrive with different questions - and today you answer all of them with the same page.

Role

  • • Product
  • • Design
  • • Frontend
  • • Database

Duration

Ongoing - building in public

Team Members

Mayuresh Mule

1. The problem, four ways

Each existing option breaks somewhere different - and the break is always the same shape: you cannot decide what a given reader sees.

Resume

Static
  • One file, one version, sent to everyone
  • Out of date the moment you send it
  • No way to show working proof - only claims about it

LinkedIn

Not yours
  • You don't own the design, layout, or ordering
  • Everyone sees the same profile
  • Depth gets flattened into buzzwords

Personal site

Expensive
  • Real time and skill cost to build
  • Rots the moment you stop maintaining it
  • Still one page for every audience

A shell

Selected
  • One durable link you own
  • Per-block audience control
  • Design upgrades arrive on their own

The reframe

A portfolio isn't a page - it's an answer to a question, and different readers arrive with different questions. So visibility belongs on the smallest unit of content (the block), not on the page. That single decision is what makes one link able to be many versions of you.

2. The 0 to 1 flow

Signup to shared link, with no blank canvas anywhere in the path.

  1. 1

    Claim your shell

    Google or a passwordless magic link. No password to set.

    0 friction
  2. 2

    Onboard in 2 steps

    Name, location, and a public URL checked live for availability.

    Suggested slug
  3. 3

    Seed the content

    Upload a resume and let AI build it, pick a discipline template, or start blank.

    Never a blank page
  4. 4

    Edit in place

    Add, reorder, and edit blocks on your live page. Set per-block visibility.

    Publish on save
  5. 5

    Share one link

    The same URL for everyone. Approved connections unlock reserved blocks.

    One surface
  6. 6

    Learn from it

    Insights show how the shell is viewed; requests ask for deeper access.

    Feedback loop
AI resume import review step
Click to expand

// Import is an accelerator, not an authority - the parser drafts, the user confirms.

3. Five nouns the whole product runs on

Keeping this vocabulary tight is what keeps the UI teachable.

TermWhat it means
ShellYour portfolio and its single public link. You can have more than one.
BlockA modular content card - banner, project, timeline, metric, testimonial, bio, contact.
VisibilityA per-block setting: Public, Connections-only, or Hidden.
ConnectionSomeone you approved to see your restricted blocks.
InsightsAnalytics on how your shell is being viewed.

4. What each audience gets from the same URL

Visibility is a property of every block, so the page composes itself around the reader.

Public

Anyone
  • Banner, bio, headline projects
  • Public metrics and testimonials
  • Enough proof to decide whether to ask for more

Connections

Approved
  • Everything public, plus reserved blocks
  • Detailed case studies, salary or client context, references
  • Unlocked by an approval you control, one person at a time

Hidden

Nobody
  • Drafts and work in progress
  • Content parked for a future audience
  • Still yours, still on the shell, simply not rendered
The same shell rendered for the public and for an approved connection
Click to expand

// Same link, two readers, two pages.

The ShellScholars block editor with a visibility menu open
Click to expand

// You always edit the live page; Save publishes and writes a change log entry.

5. Who it's for

Anyone who needs to prove what they've done and control who sees it.

T

The career-switcher

Primary wedge
Who
Has real work across disciplines, but a resume that reads like someone else's job history.
Core need
Show the proof that doesn't fit a resume line, to the one recruiter who will care.
Control they keep
Keeps the old-career detail hidden without deleting it.
T

The builder / freelancer

Second wedge
Who
Ships constantly; the work lives across GitHub, Figma, Notion, and five dead links.
Core need
One durable URL that survives every job change and client.
Control they keep
Client-specific proof reserved for approved connections.
1 LINK

ONE SURFACE

A single durable URL replaces the resume, the profile, and the scattered project links.

3 MODES

PER-BLOCK VISIBILITY

Public, connections-only, or hidden - the same link renders a different version of you.

~10

STARTER BLOCKS

Discipline templates seed a curated starter shell, so the blank page is never the first screen.

0 to 1

SOLE OWNER

Product, design, frontend, and database - built end to end on Nuxt and Supabase.

6. Trade-offs I made

Four calls that shaped everything downstream.

Edit in place, not a separate builder view

Trade-off

A preview mode would have been simpler to build and safer to ship.

Why

Splitting "edit" from "see" is exactly what makes portfolio tools feel heavy. You edit the live page and publish on Save.

Blocks, not a free-form canvas

Trade-off

Less creative freedom for the author.

Why

Constrained blocks keep every shell legible and let me upgrade the design system underneath without touching anyone's content.

AI import is an accelerator, not an authority

Trade-off

An extra confirmation step between upload and a finished shell.

Why

Treating extraction as truth makes the first impression wrong in a way people don't come back from.

Visibility per block, not a second private page

Trade-off

More state to design and explain per block.

Why

Audience control on the page level just means maintaining two portfolios again - the exact problem this replaces.

7. Shipped, and what's next

  1. Shipped

    Identity and onboarding

    Passwordless auth, live slug availability, discipline templates, and AI resume import.

  2. Shipped

    The block editor

    Drag-and-drop editing on the live page, per-block visibility, publish-on-save with a change log.

  3. Shipped

    Connections and insights

    Connection requests and approvals that gate restricted blocks; analytics on how a shell is viewed.

  4. Next Planned

    Insights that name the block, not the visit

    Which blocks actually carry a visit - the signal that tells someone what to write more of.

  5. Next Planned

    Richer connection flows

    Requesting and granting access should feel social, not administrative.

  6. Next Planned

    More block types, seeded by discipline

    Plus continued design upgrades that roll out to existing shells without asking anyone to rebuild.

What I'm taking away from it

Owning every layer - product, design, frontend, and database - means every scope decision is also an engineering decision. The hardest part of ShellScholars hasn't been building blocks; it's been deciding what the product refuses to do, so the thing it does do stays sharp: give one person one link that tells the right story to the right reader.

Let's Connect

Open to discussions around product design, UX engineering, trust systems, and meaningful problem-solving.