Build a full stack application preferably using React JS ( frontend), Nest JS( Backend)
I have planned to build stackoverflow using React JS ( client ), Redux ( state management ) , Nest JS ( Backend ) MongoDB ( Database ).
- Build Database design for the entire use-case.
- Converted the whole application into small chunks to develop independently.
- Learned Nest JS on the fly and implemented the backend.
- Integrated Swagger Docs to easily test applications.
- Implemented Authentication using JWT and stored token in local storage for Authorization.
- Implemented frontend using React JS, React-Redux, Tailwind CSS.
- Put up my best effort to make the UI similar to the original site.
Implemented features like
- JWT Authentication
- Persistence using Database ( MongoDB )
- Nest JS Backend with API Docs
- Redux State Management
- Minimum API calls from Frontend
This project was large and a lot of time investment goes into structuring the project and making it extendable, robust and maintainable. Learn about how to set standards for your own project from scratch like consistent error handling and templates. Rest of the learning is in the Backend. Learned enterprise framework ( Nest JS ) which has its own concept like dependency injection and inbuilt libraries for logging and documentation, etc. It was a code sprint.
Future Scope
- Caching layer like Redis or in-memory LRU Cache.
- Extend to include tags, topics etc.
- Migration to Mysql ( relational database ).
- Analytics
- Fuzzy Search