This is a Next.js project bootstrapped with create-next-app.
This is a Next.js app. The instructions below get a contributor from a fresh machine to a running development server.
Prerequisites
- Git
- Node.js (recommended 20.x) and npm (or pnpm / yarn)
- Optional: nvm to manage Node versions
Quick setup (copy-paste)
- Clone and enter the repo:
git clone https://github.com/deesig/ComplyAI.git
cd ComplyAI- Use the recommended Node version (if you have nvm and a
.nvmrc):
nvm install 20
nvm use 20- Install dependencies:
# prefer npm ci for reproducible installs when a lockfile exists
npm ci || npm install- Configure Firebase (the project currently uses environment variables):
Create a .env.local file in the project root with these keys (fill with values from your Firebase web app):
NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
NOTE: Do not commit .env.local. Use deployment provider secrets for production (Vercel, Netlify, etc.).
- Run the dev server:
npm run dev
# then open http://localhost:3000- Run the back-end server:
node server.jsBuild & start (production):
npm run build
npm run startTroubleshooting & tips
- If you see Node version errors, install/use Node 20 as shown above.
- If Firebase calls fail, double-check your
.env.localvalues and make sure the Firebase project allows the app's domain (localhost during dev). - Commit
package-lock.json(or your lockfile) to ensure reproducible installs.
More
- For detailed Next.js docs and deployment, see https://nextjs.org/docs
- If you want, I can add
.nvmrc, a.env.local.example, or updatesrc/firebase.tsto read env vars — tell me which and I'll implement it.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun devOpen http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.