Ugram is a content sharing web application like Instagram. It is a full-stack project that uses modern industry standard technologies. Ugram was built as a group project for an advanced web development course. My personal contribution to the project was that of a full-stack developer, where I end-to-end programmed functionalities such as account management, hashtag implementation, content recommendation algorithms, and more. I implemented all logic for these features: React frontend, RESTful API and documentation, NodeJS backend, and database interaction through NestJS’s ORM. Last but not least, I contributed to and reviewed the code of my peers on multiple other aspects of the project.
The project was built with a robust stack meant to reflect what is expected from a modern web applications:
- Typescript + React frontend ();
- Typescript + NodeJS backend (monolithic architecture, uses NestJS too);
- PostgreSQL database;
- Hosted on AWS and uses multiple of their services (EC2, Elastic Beanstalk, ECS, Cloudflare, etc.)
- Containerized application with Docker;
- Robust CI/CD using multiple Github Actions and automated unit tests (Jest);
- Google Analytics and Sentry implementation for monitoring and logging needs.
As of today, the project is no longer online.