SkillAgentSearch skills...

Atrium

A self-hosted client portal for agencies and freelancers. Manage projects, share files, and give clients a branded portal to track progress

Install / Use

/learn @Vibra-Labs/Atrium
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"> <img src="./public/icon.png" alt="Atrium" width="120" /> </p> <h1 align="center">Atrium</h1> <p align="center"><strong>A self-hosted client portal for agencies and freelancers.</strong></p>

Website | Documentation | GitHub Issues

Created by @edgarjc -- Built out of frustration with the tools I was using to manage client work.

License: ELv2

Atrium

Why Atrium?

Most agencies juggle shared drives, spreadsheets, and scattered emails to keep clients in the loop. Atrium replaces all of that with a single branded portal your clients can log into -- no more "can you resend that file?" emails. Unlike managed SaaS platforms, you own the data and host it yourself.

Dashboard

Features

  • Project management -- Customizable status pipeline per organization
  • File sharing -- Upload and deliver files via S3, MinIO, Cloudflare R2, or local storage
  • Invoicing -- Create and send invoices to clients with draft/send workflow
  • Client payments -- Clients pay invoices directly via Stripe Checkout (Direct Keys or Connect)
  • Global search -- Full-text search across projects, files, clients, and updates
  • White-label branding -- Custom colors, logo, and branded login page for your client portal
  • Custom domains -- Point your own domain (e.g. portal.yourcompany.com) to the client portal with automatic SSL
  • Role-based access -- Owner/admin roles for your team, member role for clients
  • Authentication -- Magic link and email/password auth via Better Auth
  • Multi-tenant -- Each agency operates as its own isolated organization
  • Optional telemetry -- Self-hosters can opt in to share anonymous crash reports to help improve Atrium (see Telemetry)

Tech Stack

| Layer | Technology | |-----------|-----------------------------| | API | NestJS 11 | | Frontend | Next.js 15, React 19 | | Database | PostgreSQL 16, Prisma ORM | | Auth | Better Auth | | Styling | Tailwind CSS | | Email | Resend + React Email | | Monorepo | Turborepo + Bun |

Getting Started

Local Development

Prerequisites: Bun (v1.0+) and Docker (for PostgreSQL).

git clone https://github.com/Vibra-Labs/Atrium.git
cd atrium
bun install
bun run setup
bun run dev

This starts the web app at localhost:3000 and the API at localhost:3001. The setup script handles env files, database, and seed data automatically.

Docker (Production)

A pre-built image is available on Docker Hub:

docker pull vibralabs/atrium:latest

The quickest way to run Atrium with PostgreSQL:

curl -O https://raw.githubusercontent.com/Vibra-Labs/Atrium/main/docker-compose.yml
BETTER_AUTH_SECRET=$(openssl rand -base64 32) \
POSTGRES_PASSWORD=your-secure-password \
docker compose up -d

Or build from source:

git clone https://github.com/Vibra-Labs/Atrium.git
cd atrium
docker compose up --build -d

The unified image (vibralabs/atrium) bundles the API, web app, and a Caddy reverse proxy into a single container on port 8080. It works with any container platform — Docker Compose, Coolify, Portainer, Unraid, etc.

First Use

  1. Open localhost:3000/signup and create your account
  2. Create projects, upload files, and manage statuses from the dashboard
  3. Invite clients by email -- they access the client portal at /portal

Documentation

Roadmap

SAML/SSO, contracts & e-signatures, client approval workflows, calendar view, and more. See the full Roadmap.

Contributing

Contributions are welcome! Here's how to get involved:

  1. Open an issue first -- Whether it's a bug report, feature idea, or improvement, start with a GitHub Issue so we can discuss before you write code.
  2. Keep PRs focused -- Small, single-purpose pull requests are easier to review and merge.
  3. Bug fixes and improvements welcome -- New features should be discussed in an issue first to make sure they align with the project direction.

Community & Support

If you find Atrium useful, consider giving it a star -- it helps others discover the project.

License

Atrium is source-available software licensed under the Elastic License 2.0 (ELv2). You are free to use, modify, and self-host Atrium. The license restricts offering it as a managed service to third parties.

Related Skills

View on GitHub
GitHub Stars18
CategoryProject
Updated1d ago
Forks6

Languages

TypeScript

Security Score

80/100

Audited on Apr 6, 2026

No findings