Skip to main content

Prerequisites

Before you begin, ensure you have:
  • Node.js ≥ 18.0 or Bun ≥ 1.0
  • Git installed
  • A Stripe account (for invoicing features)
  • A Stream Chat account (for team messaging)
We recommend using Bun for faster installs. All scripts in this guide use bun, but npm / yarn / pnpm work identically.

Clone the Repository

git clone https://github.com/AymanSdk/nexthub-agency-os.git
cd nexthub-agency-os

Install Dependencies

bun install
This installs all dependencies including React, Tailwind CSS, Framer Motion, shadcn/ui, and all Radix UI primitives.

Environment Variables

Copy the example env file and fill in your keys:
cp .env.example .env.local
VariableRequiredDescription
VITE_STRIPE_PUBLIC_KEYYesYour Stripe publishable key
VITE_STREAM_API_KEYYesStream Chat API key
VITE_GOOGLE_CLIENT_IDOptionalFor Google Drive integration
VITE_APP_URLYesBase URL of your deployment

Start the Development Server

bun dev
The app will be available at http://localhost:5173.
Hot Module Replacement (HMR) is enabled by default via Vite. Changes to any component are reflected instantly in the browser without a full reload.

Build for Production

bun build
The production build is output to the dist/ folder. Preview it locally with:
bun preview

Run Tests

bun test
The test suite uses Vitest. For watch mode during development:
bun test:watch

Linting

bun lint
ESLint is configured with TypeScript-aware rules. Fix auto-fixable issues with:
bun lint --fix

Installation complete! Next, set up your workspace to configure branding, team members, and integrations.