Free Foodify
Website for UTK Students to find and share free food around Knoxville.
Relevant Skills:
- VueJS
- NodeJS
- FullStack Development
- MongoDB
- API Development
- Database Development
- ARCGis API
Project Overview
Foodify: Free Food Finder is a full-stack web application designed to help users easily find and report free food events in their area. Hosted at freefoodify.netlify.app, the platform allows users to contribute information about food-related events and access resources like charity kitchens offering free meals. With a user-friendly interface and robust security features, Foodify is a valuable tool for anyone looking to save money and access free food resources.
Foodify enables users to view, report, and interact with free food events through a seamless map integration with Google Maps. The application also includes a comment and voting system where users can share feedback and rate events based on their experiences.
Key Features:
- Free Food Events Reporting: Users can report and view free food events in their area. These events can be displayed on an interactive map, and users can open event locations directly in Google Maps for easy navigation.
- Comment and Voting System: Each event allows users to leave comments, rate events, and interact with other users' feedback. Comments can include a timestamp, content, and optionally, a username.
- Resources Tab: Tracks recurring free food sources, such as charity kitchens that provide regular meals for those in need.
- Account Management: Users can create and manage their accounts, ensuring a personalized experience with secure access to their data.
Cybersecurity Practices:
- Password Storage: Passwords are securely stored using Bcrypt and Salting for hashing to ensure user credentials remain safe.
- Account Management: Settings for account management are password-protected, ensuring that users' personal information remains secure.
- Secure API and Database: All sensitive data and API endpoints are protected with hidden and secured keys to prevent unauthorized access.
Comment and Voting System:
- Event Reporting: Users can report free food events, which are then available for other users to view, comment, and interact with. All users can see and comment on these events.
- Timestamped Comments: Each comment includes a timestamp and can include the user’s username (if provided).
- Anti-Abuse Measures: To prevent abuse, all comments and votes are tied to a unique user ID, ensuring accountability.
- Voting Restrictions: Users can "Like" or "Dislike" a comment, but once a vote is cast, changes are restricted to prevent manipulation of feedback.
Technologies Used:
- Frontend: Built with React and hosted on Netlify.
- Backend: Powered by Node.js with Express for building RESTful APIs and handling requests.
- Database: Data is securely stored in a NoSQL database, with encrypted and protected data endpoints.
- Authentication: User authentication is managed with secure password storage practices, including Bcrypt and Salting.
Foodify provides an essential service to individuals and communities looking to access free food resources while ensuring a secure and safe platform for interaction and feedback. The app is designed to be easy to use, allowing users to access and contribute valuable information about free food sources.