All projects

margin

A social feed with an ending.

Margin explores a simpler, more intentional social platform through a finite, chronological feed, intentional posting limits, mutual friendships, and smaller shared spaces. It is designed to make room for life outside the feed.

My role
Product Design & Full-Stack Development
Project
Independent · 2026
Scope
Identity, interaction, and implementation

Margin: The Concept

Margin began with minimalism: what if social media gave people more room to live outside of it?

A finite, chronological feed, intentional posting limits, mutual friendships, and smaller shared spaces keep the focus on personal connection. Reaching the end of the feed is part of the experience.

Restrained typography, generous whitespace, and subtle motion carry that philosophy into a full-stack application, now presented as an interactive portfolio demo.

Technology should make room for life, not take up all of it.

Familiar places.
A connected experience.

The feed, profiles, and conversations share the same visual language. Each gives its content a clear home, from an everyday update to a collection of photographs.

marginFeed
Theo MarchettiYesterday · 8:15 am

Finished my book on the train home. If anyone needs something to read, you can borrow it.

Need a new recommendation for the commute.

That’s everything for now.

A visual language
with a human hand.

I designed Margin Aside, a custom typeface, and Margin Editorial Geometry, an original icon family, to give Margin its character. Warm paper, olive, and cinnamon hold the interface together, with Inter keeping navigation and controls clear.

Margin Aside

Aa
A thought.
A photograph.
A conversation.

Original type · Worn-print detail · Rounded terminals
Margin Editorial Geometry · Custom icon family
End of feed
Conversation
Gallery
Spaces
Notebook
On Repeat
Close friends
Reading
Warm paper#EEEDE7
Deep slate olive#282820
Olive#777536
Cinnamon#C99B61

Design decisions,
carried into the build.

The full-stack foundation

The original implementation connects the interface to authentication, invitation-based membership, PostgreSQL and Prisma, private media, and server-side authorization. Friendship boundaries, conversations, Spaces, and data lifecycle rules carry the product decisions into the application architecture.

  • Next.js & TypeScript
  • PostgreSQL & Prisma
  • Authentication & authorization
  • Private media & data lifecycle

A demo you can explore

The public demo lets visitors explore as Ines, a fictional member, without registering. Visitors can compose posts, try conversations, arrange photographs, and explore Spaces using sample content. Changes stay in memory within one tab and reset on refresh or exit. The full-stack implementation remains in the source, separate from the demo.

The public demo uses sample content and local interactions. Live accounts, private uploads, and backend services are kept outside that experience.

Explore live demo