Skip to content

procoder30001/freelance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Atelier

The freelance workspace built for craft, not busywork.

Atelier is an open-source business OS for independent creatives and freelancers — proposals, invoices, client portals, project tracking, and an AI assistant, all in one dark, opinionated workspace.


What's inside

Module What it does
Dashboard Morning brief, financial bento widgets, cash-flow forecast, activity timeline
Proposals AI-generated proposals with a rich editor, section-level refinement, PDF & DOCX export, shareable public link
Invoices Drag-and-drop canvas invoice editor, line items, send via portal
Client Portals White-label portals with an AI editor — clients see tasks, messages, and milestones without logging in
Projects Board view, milestone accordion, task trees with subtasks, client notifications
Clients Client profiles, deal pipeline, contract tracking
Insights & Revenue Earnings comparison, income pacing, cash-flow forecasting
Morning Brief AI-curated daily summary of your business at a glance
Calendar Scheduling and deadlines across projects

Tech stack

Next.js 16 · React 19 · TypeScript · Tailwind CSS
Supabase (Postgres + Auth + Realtime)
Vercel AI SDK · Claude (proposals, portal AI, assistant)
Three.js · React Three Fiber · GSAP · Framer Motion · Lenis
@dnd-kit · Recharts · React PDF · shadcn/ui

The marketing site is a WebGL-heavy, true-black dark experience — pointer-reactive dot fields, kinetic typography, scroll-choreographed sections. The workspace follows the same design language: monochromatic, precise, fast.


Getting started

git clone https://github.com/procoder30001/atelier
cd atelier
npm install

Copy the environment template and fill in your keys:

cp .env.example .env.local

You'll need:

Run migrations:

npx supabase db push

Start the dev server:

npm run dev

Contributing

Atelier is built in the open and contributions are genuinely welcome. The codebase is intentional — every component has a reason to exist — and we'd love help pushing it further.

Good first areas

  • New portal templateslib/portal/templates.ts + components/portal/portal-template-renderer.tsx. Add a layout, register it in two places, done.
  • Proposal sectionslib/proposals/content.ts defines the section schema. New section types (testimonials, timeline, team) would be valuable.
  • Chart widgetscomponents/dashboard/financial/ for new financial widgets using Recharts.
  • Invoice line-item types — milestone billing, retainer blocks, expense rows.
  • Integrations — the integrations page (app/(workspace)/integrations/) is a blank canvas. Stripe, Toggl, Cal.com, and HubSpot are on the wishlist.
  • Accessibility — keyboard navigation, focus rings, ARIA labels across the workspace.
  • Tests — there aren't many yet. Any coverage helps.

Contribution guidelines

  1. Fork → branch → PR. Branch from main. Name branches feature/, fix/, or chore/.
  2. Small PRs win. One logical change per PR. A focused 200-line PR ships faster than a sprawling 2,000-line one.
  3. Match the design system. Use existing tokens from app/globals.css. No one-off hex values. No purple.
  4. No console.logs. Remove debug output before opening a PR.
  5. Describe the why. PR descriptions should explain what changed and why, not just list files.

Running a feature end-to-end

Most workspace features need a seeded Supabase project. The supabase/migrations/ folder has all schema. After npx supabase db push, create a test user through the auth page and data populates from there.


Design philosophy

Atelier exists because freelance tools are either ugly, bloated, or both. The design is deliberately restricted: one material (warm white on true black), drama from WebGL and motion rather than color, and a layout system that gets out of the way of the work itself. New UI should feel like it belongs — spare, fast, typographically tight.


License

MIT — use it, fork it, build your own thing on top.


Built by Drew Wycherley and contributors.