A Next.js app for LibrarEase. This repo uses Yarn.
Prereqs
- Node.js 18+ (or 20+ recommended)
- Yarn (classic) — packageManager is set in
package.json - Redis (local or hosted)
- Firebase project (client SDK + Admin credentials)
- Install deps
yarn install- Configure environment
Copy the example and fill required values:
cp .env.example .env
# or create .env.local in developmentRequired variables (see .env.example for the full list):
- Firebase client:
FIREBASE_API_KEY,FIREBASE_AUTH_DOMAIN,FIREBASE_PROJECT_ID - Firebase Admin:
GOOGLE_APPLICATION_CREDENTIALS(absolute path to the service account JSON) - Redis:
REDIS_HOST,REDIS_PORT,REDIS_PASSWORD(optional),REDIS_DB - App URLs:
API_URL,NEXT_PUBLIC_APP_URL
- Start Redis
On macOS (Homebrew):
brew install redis
brew services start redis
# default host: localhost, port: 6379Or via Docker:
docker run -p 6379:6379 --name redis -d redis:7- Run the app
yarn dev
# build & run production
yarn build && yarn startOpen http://localhost:3000 to view.
yarn dev: Next.js dev server (Turbopack)yarn build: Production buildyarn start: Start production serveryarn lint: ESLintyarn format: Prettier formatyarn typecheck: TypeScript type checking
- Create a Firebase project and enable Authentication as needed
- Place the Admin service account JSON and point
GOOGLE_APPLICATION_CREDENTIALSto it - Client keys go in
FIREBASE_*variables; do not commit secrets
If using OpenTelemetry, configure OTEL_* variables per .env.example.
This software is licensed under the PolyForm Noncommercial License 1.0.0. See the LICENSE file for terms. For commercial licensing inquiries, contact: solidifyarmor@gmail.com.