Online lending: mobile app (Android), admin dashboard (PC), and .NET API with PostgreSQL.
| Path | Stack | Purpose |
|---|---|---|
apps/admin-dashboard |
Next.js | Admin dashboard (PC) |
apps/mobile |
React Native | Android app |
apps/api |
.NET 9 | REST API backend |
apps/docs |
Next.js | Docs (optional) |
packages/ui |
React | Shared UI (admin/docs) |
Uses appsettings by environment (like you’re used to):
appsettings.json– baseappsettings.Development.json– local dev + dev DBappsettings.Staging.json– staging DB & CORSappsettings.Production.json– production DB & CORS
Set the environment with ASPNETCORE_ENVIRONMENT (e.g. Development, Staging, Production). The matching appsettings file is loaded automatically.
Uses env files (similar idea to appsettings, but file per “environment”):
.env.development– loaded whenNODE_ENV=development(default fornpm run dev).env.staging– use for staging build/run (see below).env.production– used fornext build/next startwhenNODE_ENV=production.env.example– list of variables (no secrets)
Scripts:
npm run dev– dev, uses.env.developmentnpm run dev:staging– dev with staging API URL (loads.env.staging)npm run build– production build (uses.env.production)npm run build:staging– staging build (uses.env.staging)
Secrets: put them in .env.local (gitignored); they override the env files above.
Uses env files plus react-native-config (one file per “environment”):
.env.dev– local dev.env.staging– staging.env.prod– production
You choose the file at build/run time with ENVFILE:
- Dev:
ENVFILE=.env.dev npx react-native run-android - Staging:
ENVFILE=.env.staging npx react-native run-android - Prod:
ENVFILE=.env.prod npx react-native run-android
See apps/mobile/README.md for setup (react-native-config, Gradle, etc.).
No DB is created yet. With PostgreSQL installed and running:
psql -U postgres -c "CREATE DATABASE \"HelpingHand_Dev\";"Then run the API from apps/api and, when you add entities, use EF Core migrations (see apps/api/README.md).
-
API (from repo root):
cd apps/api dotnet runUses
Developmentandappsettings.Development.jsonby default. -
Admin dashboard:
npm install npm run dev --workspace=admin-dashboard
Uses
.env.development(points tohttps://localhost:7001). -
Mobile:
Seeapps/mobile/README.mdto scaffold the React Native app and wire up the env files.
- Turborepo (builds/tasks for Node apps)
- Next.js env vars
- react-native-config