Project Structure - cubing/algdb GitHub Wiki

This repo is split into to 2 parts: backend, and client

Client

The client was generated with create-react-app.

Typescript is the dialect of javascript chosen.

chakra-ui is the chosen css-framework. We're specifically using the next-gen version so make sure to view the appropriate doc.

Under src, the project is split into aptly named directories:

  • pages: Each page of the project. Each page can be split into multiple one-use components all under their own directory.
  • components: all non-page components that are multi-use
  • hooks: custom react hooks
  • providers: custom react providers
  • logic: Any business logic that we need
  • generated: the type definitions automatically generated from the graphql schema in root

Backend

The backend is taking advantage of google cloud functions.