urbit / grants

Urbit Grant Program

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Urbit Grants

→ Prod site

This is a collection of the various services and components that make up the Urbit Grants.

The website consists of a collection of four Heroku apps. Currently, we directly deploy our code to Heroku (not through GitHub).

For development, see the stage branch README for important information about the current dev setup.

Setup

Instructions for each respective component can be found in:

  • /backend/README.md

  • /frontend/README.md

  • /admin/README.md

  • /e2e/README.md

We currently only offer instructions for unix based systems. Windows may or may not be compatible.

Heroku

Our heroku setup uses separate apps for each component of the monorepo.

Be sure to replace myappbasename with your own base-name.

Create Execute the heroku-create-apps script

chmod u+x heroku-create-apps
./heroku-create-apps myappbasename

This should generate apps and set up git remotes to deploy to.

Add If the apps have already been created, and you want to be able to deploy to them, you may use the heroku commands below to setup remotes.

heroku git:remote -a myappbasename-backend -r myappbasename-backend
heroku git:remote -a myappbasename-frontend -r myappbasename-frontend
heroku git:remote -a myappbasename-admin -r myappbasename-admin
heroku git:remote -a myappbasename-eip712 -r myappbasename-eip712

Setup

Add addons to the following dynos:

  • Backend
    • Postgres (Standard 0 if you want backups) heroku addons:create heroku-postgresql:hobby-dev --app=<APP_NAME>
  • Backend, Frontend, EIP-712
    • Timber (Optional logging)

Initialize the database by running

heroku run "cd backend && flask db upgrade" --app myappbasename-backend

Add environment variables for each app based on their .env.example. To configure everything, you'll need:

  • An AWS S3 instance (see backend/README.md)
  • A Sendgrid account
  • Sentry apps for backend and frontend
  • Twitter and GitHub OAuth apps
  • An Infura instance

Deploy To push to heroku, build & deploy:

git push myappbasename-backend HEAD:master
git push myappbasename-frontend HEAD:master
git push myappbasename-admin HEAD:master
git push myappbasename-eip712 HEAD:master

About

Urbit Grant Program


Languages

Language:TypeScript 56.0%Language:Python 30.4%Language:Less 7.8%Language:HTML 2.9%Language:JavaScript 2.4%Language:Shell 0.4%Language:Mako 0.0%