Support ticket management system developed using React NodeJS and MySQL.
- Language - Typescript
- Frontend - React
- Backend - NodeJS
- Database - MySQL
- Deployment - Heroku
- Testing Framework - Chai, Mocha
I have created this application as a part of an assignment for one of the companies. In this application, I have focused on the following aspects:
- User Friendliness
- Data Consistency
- Basic Security
- I would have used
websockets
instead ofAPIs
for real-time updation. - I would have implemented a better logging system, making debugging easy for developers.
- Currently I am only generating
ACCESS_TOKEN
for user authentication but would have generatedREFRESH_TOKEN
to provide a more secure and seamless user-friendly experience. - As of now I haven't given much thought to user scalability. More than
100
users might require more considerations at the API and DB design level, especially, get all APIs and database indexes. - Configured a more strict type-checking, and not using unknown datatype, which could be a cause of bigger problems.
- Wrote unit and end-to-end tests.
- Provide a more secure way to log in. Currently, exposes passwords in login API payload.
- Error handling could be done better. Currently, in a short time, focused on covering happy cases, but did miss some edge cases.
- Better UI Design.