This course is designed to be the perfect combination of practical and theoretical concepts for learning. Therefore, we will build a real full-stack web app as we progress through this course. The app is called IndieNotes. It is a simple note-taking app, but it covers most of the common remix features.
The app is based on the official Remix Indie Stack. But we have made some modifications to it to make it easier to deploy.
A user can log in or sign up and access their notes. They can also add a new note or delete existing notes. We have kept the app functionalities and features simple so that we can focus more on the implementation details and Remix features.
The app has email-password based auth. To fully understand the full-stack part of Remix, we will implement auth from scratch. This will be cookie-based stateless auth. We will also talk about some of the common practices to keep our auth logic safe, such as hashing.
Vercel for Deployment
The original indie-stack app by the Remix team is designed to be deployed on fly.io. Although fly.io is one of the best ways to deploy Remix apps, it can be slightly difficult for new users, as it requires some extra configuration, such as setting up docker instructions. Therefore, for the sake of simplicity, we have modified it to be deployed on Vercel. Vercel is easier to get started and provides most of the features as part of their free tier. Vercel also provides CI/CD options to deploy code from the Git repo automatically, so we don’t need to set up custom CI/CD tools.