SPUR needs a streamlined digital platform to manage startup on-boarding, review, and funding processes. The current system relies on fragmented communication channels, creating inefficiencies for both SPUR administrators and startup applicants.
Deployment overview: pr
-> main
-> staging
-> production
-> new tag for new version
From pr-branch
-> main
Note
This flow will deploy to the sandbox environment where the database can be reset. This means that migration files can be directly updated. If a merge results badly, it will be caught in this environment without damaging staging and production.
From main
-> staging
Note
This flow will deploy to the staging environment where the database and environment can't be reset and mimic the production environment. This is where stable features are in the sandbox environment and are ready to be deployed to production. Anything that goes wrong in this environment will be fixed as if it was a problem in production. This ensures data changes are not causing any data loses before going to production.
From staging
-> production
Note
This flow will deploy to production. Before merging, it is CRUCIAL to check that everything is working as expected in the staging environment.
Note
This is the monorepo containing the backend and frontend code for the webapp, as well as code related to the Web3 infrastructure
Clone the repo
git clone https://github.com/KonferCA/SPUR-Onboard.git
From your terminal, navigate to the root path of your clone
cd path/to/your/clone
SPUR backend requires Go version 1.23
or higher for best compatibility. If you need to install or upgrade Go, visit the official Go download page.
From your terminal, navigate to the backend path of your clone
cd path/to/your/clone/backend
Air (auto-reload backend)
go install github.com/air-verse/[email protected]
SQLc (generate type-safe code from SQL queries)
go install github.com/sqlc-dev/sqlc/cmd/[email protected]
Goose (SQL migration management tool)
go install github.com/pressly/goose/v3/cmd/[email protected]
Goimports (Code formatting tool)
go install golang.org/x/tools/cmd/goimports@latest
Make
brew install make
Docker
brew install docker
Important
Make commands only work on unix like systems.
Create a new PostgreSQL instance using Docker
make init-dev-db
Start PostgreSQL for development
make start-dev-db
Check health of DB
make health-dev-db
Run migrations when ready
make up
Start development server
make dev
Note
Use make query "SELECT ... FROM ..."
for quick query on the terminal.
You should also checkout the other available commands in the Makefile.
SPUR frontend requires Node version 22.9.0
or higher for best compatibility. If you need to install or upgrade Node, visit the official Node download page.
From your terminal, navigate to the backend path of your clone
cd path/to/your/clone/frontend
Install pnpm using npm
npm install -g pnpm
Install dependencies
pnpm i
Run local server
pnpm dev