Skip to content
Yangshun Tay edited this page Sep 29, 2022 · 26 revisions

Tech Stack

Area Choice What is it
Monorepo Turborepo High-performance build system that allows you to break a repo into multiple smaller packages
Language TypeScript Statically typed JavaScript
View React Most popular UI library
App Framework Next.js React meta framework that has multiple ways of rendering
Styling Tailwind CSS Rapidly build modern websites without ever leaving your HTML
Data Fetching React Query A pretty sophisticated data fetching library
Auth NextAuth.js Authentication for Next.js, supports many OAuth options
Type Safety tRPC End-to-end typesafe APIs made easy
ORM Prisma Next-generation Node.js and TypeScript ORM
Database PostgreSQL Popular open source relational database

Development

Git

  • main is release branch and should remain stable at all times
  • Create feature branches for your in-progress features and using the format <username>/my-feature (doesn't have to be your GitHub username, just use something identifiable and be consistent about it)
  • Commit messages should follow the Conventional Commits specification as much as possible
  • Squash commits into a single commit before merging into main
  • Delete your branch after merging into main

Editor

Directory Structure

TBD

Front End

React

  • Props should be Readonly
  • Props should be sorted alphabetically
  • Props should be destructured in the component function declaration

Form Library

TBD

Data Querying Library

TBD

Clone this wiki locally