Final Project to conclude CS50 - Flask Web Framework.
The Dogs & Cats project is an innovative web platform I developed as my final project for the CS50 Introduction to Computer Science course. It's designed to facilitate pet adoptions by allowing users to register pets available for donation while also enabling prospective pet owners to view and select pets for adoption. Utilizing modern web technologies like Flask and SQLAlchemy, this application not only streamlines the adoption process but also empowers users to manage their pet-related registrations efficiently.
This project showcases the practical application of programming concepts learned throughout the CS50 course, blending computer science with social impact. With a range of features that enhance user interaction and data management, this platform is geared toward animal lovers looking to adopt or nurture stray animals.
User Registration and Management: Users can create an account, log in, and manage their profile information including username, password, and email address.
Donation Registration: The application allows users to register pets for adoption, providing detailed information such as description, reason for donation, and associated images.
Pet Adoption Listings: Users can view available pets for adoption, select specific cases, and express interest in adopting a pet.
Image Storage and Validation: Uploaded images are securely managed in the filesystem, with validation mechanisms to ensure unique filenames and prevent overwrites.
Database Management: Implemented using Flask-SQLAlchemy and SQLite, the database is structured with three tables—users, cases, and selected cases—ensuring efficient data organization and retrieval.
Responsive Design: The platform's interface is designed to be mobile-friendly, ensuring a seamless user experience across devices.
Effective User Interface: A clean and intuitive UX facilitates easy navigation through the site's features, enhancing user engagement and satisfaction.
Project Documentation: Comprehensive documentation is provided for the technologies used, including Flask, Flask-SQLAlchemy, and Flask-WTF, ensuring clarity and readability for future improvements.
Flask is a lightweight and popular web framework for Python, known for its simplicity and flexibility. It is widely used to build web applications, providing a minimalistic approach to web development with features like routing, templates, and support for extensions.