Skip to content

Latest commit

 

History

History
42 lines (26 loc) · 1.96 KB

README.md

File metadata and controls

42 lines (26 loc) · 1.96 KB

BruinTask

Setup

Clone this repository:

git clone https://github.com/xalbd/taskbruin
cd taskbruin

Install Node.js LTS (at the time of writing, 20.9.0). With Homebrew:

brew install node@20

Create a Postgres database with our selected database provider, Neon. Note that this project does not support locally hosted instances, as there are serverless database interactions that are tied to Neon.

Set up your environment variables:

cp .env.TEMPLATE .env

Drizzle is used to interface with the database, so fill in DATABASE_URL with a connection string. Note that the connection string should include a password and should be pooled. Refer to this document for more information on connecting to the database through Neon.

We support authentication through Github OAuth. Create an OAuth app by following the instructions in this document and fill in the environment variables listed (NEXTAUTH_SECRET, GITHUB_ID, and GITHUB_SECRET).

Finally, we store images on AWS S3. Create a bucket, and fill in the access key, secret access key, and region in the corresponding fields in the .env file, AWS_S3_ACCESS_KEY, AWS_S3_SECRET_ACCESS_KEY, and AWS_S3_REGION.

Run Locally

./start.sh

This shell script fast forwards your project based on the upstream Git repository (if any exists), kills currently running Node processes, updates your npm packages based on package.json, updates the Neon repository you're connected to according to your schema file, and then finally starts a development server, located at localhost:3000.

Deployment

The project runs on Next.js, meaning Vercel takes care of deployment!