Skip to content

BuildTheEarth/web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@BuildTheEarth/web

A Monorepo containing all website related projects.

official chat Crowdin

Apps and Packages

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
packages/typescript-config Shared tsconfig for all apps Typescript, JSON -/-
packages/prettier-config Shared prettier config for all apps Prettier, JSOn -/-

Table of Content

Getting Started

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.

Bugs and Features

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.

Building

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

Building all applications

yarn build

Due to the use of turborepo, this command will only build applications that have changed since the last build!

Building a single application

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=[...]

CI/CD

This monorepo uses Github Actions to create deployable docker images, which are pushed to the Github Container Registry.