Galactic Diaries is a blog/social media platform developed as the capstone project for the Associate's Degree in Computer Programming at Valencia College. The application allows users to sign up, log in, edit their profiles, create and publish blog posts, and interact with other users' posts through comments. The project aims to demonstrate the skills and knowledge acquired throughout the program, with a focus on full-stack web development using modern technologies.
The project follows the Model-View-Controller (MVC) architectural pattern, ensuring a clear separation of concerns and promoting maintainability and scalability. The frontend, built with React and Material-UI, provides an intuitive and responsive user interface. The backend, powered by Node.js and Express, handles HTTP requests, interacts with the database, and serves as the API layer. MongoDB, a NoSQL database, is used for efficient and flexible data storage.
- React
- Material-UI
- Node.js
- Express
- MongoDB
- JSON Web Tokens (JWT)
- Digital Ocean
- MongoDB Atlas
- User registration and authentication
- User profile management (profile picture, bio, and other details)
- Blog post creation, editing, and publishing
- Draft functionality for blog posts
- Chronological feed displaying posts from all users
- Commenting system for user interaction
- Post and comment editing and deletion
- User account deletion
As the project lead, I took responsibility for the overall development and coordination of the project. My primary focus was on the backend development, leveraging Node.js, Express, and MongoDB to create a robust and efficient API. I designed and implemented the database schema, set up the server-side architecture, and ensured smooth integration with the frontend.
In addition to my backend contributions, I also actively participated in the frontend development using React and Material-UI. I collaborated with the team to create a visually appealing and user-friendly interface, implementing features such as user authentication, profile management, and interactive blog post functionality.
Throughout the project, I demonstrated strong leadership skills, effectively communicating with team members, delegating tasks, and ensuring the timely completion of milestones. I actively participated in code reviews, provided guidance and support to my teammates, and fostered a collaborative and inclusive development environment.