Skip to content

Latest commit

 

History

History
46 lines (32 loc) · 1.34 KB

File metadata and controls

46 lines (32 loc) · 1.34 KB

Personal deployment

This fork can run on either Vercel or Render. Both have a free option suitable for a small personal project.

Required Firebase setup

  1. Create a Firebase project and enable Realtime Database.
  2. Publish the rules from database.rules.secure.json.
  3. Create a Web app in Firebase and copy its configuration values into lib/firebase-sdk.js.
  4. In Firebase project settings, create a service-account private key.

Create the admin password hash

Run:

node generate-password-hash.js "choose-a-strong-password"

Keep the password itself private. Copy the generated hash into the ADMIN_PASSWORD_HASH environment variable.

Render

Create a new Blueprint from your GitHub fork. Render will read render.yaml. Supply these secret values in the Render dashboard:

  • ADMIN_EMAIL
  • ADMIN_PASSWORD_HASH
  • FIREBASE_PROJECT_ID
  • FIREBASE_CLIENT_EMAIL
  • FIREBASE_PRIVATE_KEY
  • APP_DOMAIN (the final https://...onrender.com URL)

JWT_SECRET is generated by Render. SLACK_WEBHOOK_URL is optional.

The free Render web service sleeps after inactivity, so the first request after an idle period can take about a minute.

Vercel

Import the GitHub fork into a personal Hobby account and add the same environment variables. Vercel uses the existing vercel.json serverless configuration and does not use render.yaml.