To get this project moving along the product needs to be established. Also, the setup process should be easy to complete, portable, and easily repeated for anyone engineer, regardless of their experience level.
This codebase was created to demonstrate a backend built with Typescript + Express + Prisma including CRUD operations, authentication, routing, pagination, and more.
Implemented by Ronan Soares. Built with NodeJs Express web framework. Database interactions are managed with Prisma ORM.
This recent implementation required very little to get it working:
.env.development file.Cors for local development.The above implementation uses the PostgreSql relational database for data persistence. Rather than setting this up with a local database server, Docker has been used. It enables the same facility while also being configured in code and highly portable.
Prisma provides a schema and tooling for handling migrations, gretly simplifying the database setup process. Combining this with Faker and some simple scripting produces automated seeding for the database, generating a starter data set. Rather than writing this from scratch, ChatGBT was used to do the heavy lifting. Though it took some tweaking this approach was much quicker than writing it manually.
React + Redux codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.
Implemented by King Elisha. Built with React (16.3), Redux (3.6), React-Router (4.1). It has held up surprisingly well, other than a small change relating to the way Promises were referenced, understandable for a codebase first started 7 years ago, there were no other essential changes required to get this working.
global.PromiseA monorepo is used to manage the frontend and backend (and in due course, test) packages. Based on the Yarn package managers workspace functionality, Lerna provides useful tooling to make managing multiple packages super easy.