This repository contains the following apps and other shared packages:
Name | Description | Stack | URL |
---|---|---|---|
apps/frontend | BuildTheEarth Website frontend | Next.js, Typescript | https://buildtheearth.net |
apps/api | BuildTheEarth API and Website backend | express.js, Typescript | https://api.buildtheearth.net |
apps/api | BuildTheEarth Dashboard | Next.js, Typescript | https://my.buildtheearth.net |
packages/typescript-config | Shared tsconfig for all apps | Typescript, JSON | -/- |
packages/prettier-config | Shared prettier config for all apps | Prettier, JSOn | -/- |
packages/db | Shared prisma client and schema | Prisma.js | -/- |
First, clone this repository:
git clone https://github.com/BuildTheEarth/web.git
It is reccomended to install turborepo globally:
yarn global add [email protected]
To install all dependencies, run:
yarn install
# and optionally
yarn db:generate
Now, copy the example .env
file and change all its options:
yarn env:copy
Then you can start the development server with:
yarn dev
This will also start the prisma studio.
We use GitHub Issues to manage all Bugs and Features, you can submit a new Bug or feature request here. An overview of the state of bugs and features can be found here.
Usually, you will never need to build any app yourself, as it will automatically happen once you push your changes to GitHub. If you ever need to build all applications or only a single one follow this guide:
(All commands are executed from the root web/
folder)
Optionally, start by clearing all exisiting builds:
yarn clean
yarn build
Due to the use of turborepo, this command will only build applications that have changed since the last build!
You can select only one application to be build:
yarn build:api
# or
yarn build:frontend
If you need to filter with more information you can run the root turbo command (see the docs):
turbo build --filter=[...]
This monorepo uses Github Actions to create deployable docker images, which are pushed to the Github Container Registry.