GuidesLocal Setup

Local Setup

How to run the full Neko Singa stack locally.

Prerequisites

Clone the Repos

git clone https://github.com/nekosinga/api
git clone https://github.com/nekosinga/app

Setup api

cd api
npm install
cp .env.example .env

Fill in .env:

ELFA_API_KEY=your_elfa_key
DATABASE_URL=postgresql://...
UPSTASH_REDIS_REST_URL=https://...
UPSTASH_REDIS_REST_TOKEN=...
JWT_SECRET=your_secret

The api repo uses Kysely for type-safe SQL queries against Neon Postgres. Run migrations/seed scripts if present:

# if scripts/ contains seed or migration files
node scripts/seed.js

Start the dev server:

npm run dev
# → http://localhost:3000

Setup app

cd app
npm install
cp .env.example .env

The app repo uses jsconfig.json (not TypeScript config) — path aliases are defined there, not in tsconfig.json.

Fill in .env.local:

NEXT_PUBLIC_API_URL=http://localhost:3000

Start:

npm run dev
# → http://localhost:3001

Skills Folder

Both api and app contain a skills/ folder — these hold Elfa skill definition files used to structure API capability mappings. They’re configuration, not runtime code, and don’t require separate setup.

CORS

When running locally, the app makes requests to api on a different port. Ensure the api dev server has CORS configured to allow http://localhost:3001.