Remix Jokes Decoupled Monorepo

screenshot of Remix Jokes Decoupled Monorepo
express
remix
prisma

Full-stack Decoupled Backend - Frontend MONOREPO. It uses Remix, Prisma, Express, Redis, JWT Auth, PostgreSQL, AWS Elastic Beanstalk, Typescript

Overview

Remix Jokes Full-Stack Decoupled Monorepo is a project that aims to create a complete app with a decoupled API running on a server and multiple frontends running on different servers. The project showcases a Remix app that connects to a backend made with Express and PostgreSQL. It also allows for the addition of more frontends that share the same backend, such as a React Native app, providing flexibility in terms of adding, removing, or changing frontends. The project offers the ability to deploy each part using different technologies and infrastructures, allowing for scalability and adaptability as the project evolves.

Features

  • Decoupled API: The project demonstrates the use of a decoupled API, where multiple frontends can connect to the same backend.
  • Multiple Frontends: The Remix app is just one example of a frontend that can be added to the project. It showcases the flexibility to deploy frontends to different platforms, including mobile app stores.
  • Elastic Beanstalk and RDS Deployment: The backend, implemented using Node and Express, is deployed in Elastic Beanstalk and utilizes RDS for the PostgreSQL database. This deployment strategy ensures scalability and reliability.
  • Typescript: Both the backend and frontend codebases are written in Typescript, providing type safety and improved development experience.
  • Authenticated Routes: The backend includes an authentication server with JWT tokens, allowing for secure and authenticated routes.
  • Redis Server: The project utilizes a Redis server for managing refresh tokens blacklist, enhancing the security of the authentication system.
  • Prisma and PostgreSQL: Prisma is used as the ORM (Object-Relational Mapping) tool, providing an easy-to-use interface for interacting with the PostgreSQL database.

Summary

The Remix Jokes Full-Stack Decoupled Monorepo project showcases the ability to create a complete app with a decoupled API and multiple frontends. It provides the flexibility to deploy different frontends to various platforms and technologies while utilizing a reliable and scalable backend deployment strategy. The project includes features such as authentication, PostgreSQL database, and Redis server for enhanced security. With its use of Typescript and Prisma, the project offers a modern and robust development experience.

express
Express

Express.js is a simple Node.js framework for single, multi-page, and hybrid web applications.

remix
Remix

Remix is a modern JavaScript framework that focuses on building fast and performant web applications. It emphasizes a combination of server-rendered content and client-side interactivity, offering a robust architecture for creating scalable and maintainable projects.

prisma
Prisma

Prisma is a server-side library that helps developers read and write data to the database in an intuitive, efficient and safe way.

fullstack
Fullstack

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.