diff --git a/README.md b/README.md index d4e6217..1838c5d 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,33 @@ -# SpiceShare - A recipe-sharing web app +# SpiceShare🌶️ -SpiceShare is a web application that allows users to share and discover recipes from around the world. +SpiceShare is a recipe-sharing platform for home cooks and food enthusiasts to share and discover recipes from around the world. Whether you're an expert or a beginner, SpiceShare connects you to a global community where food brings everyone together. +- Deployed site: [SpiceShare](https://www.spiceshare.live) +- Blog Article: [Read about SpiceShare's Development Journey](https://linkedin.com) +- Author: + * [Emmanuel Sekyi](https://linkedin.com/in/Esekyi) -## Introduction +## Table of Contents +1. [Introduction](#introduction) +2. [Features](#features) +3. [Prerequisites](#prerequisites) +4. [Installation](#installation️) +5. [Usage](#usage️) +6. [Learnings and Next Steps](#learnings-and-next-steps️) +7. [Contributing](#contributing) +8. [Related Projects](#related-projects) +9. [License](#license) +10. [COntact](#contact) -Welcome to SpiceShare! SpiceShare is a recipe-sharing platform where users can explore, share, and comment on a variety of recipes. From home cooks to professional chefs, this platform brings together a community passionate about food. Whether you're looking to discover new dishes or share your culinary creations, SpiceShare is the go-to platform. -- Deployed site: [SpiceShare](https://www.spiceshare.live) -- Final Blog Article: [Read about SpiceShare's Development Journey](https://linkedin.com) -- Author(s): - * [Emmanuel Sekyi](https://linkedin.com/in/Esekyi) +## Introduction📖 -## Features +SpiceShare was born from the love for food and the desire to build a community where people can discover new flavors and culinary traditions. The idea started from noticing how food often brings people together, regardless of culture or background. SpiceShare aims to create that sense of togetherness online by making it easy for users to upload and share their favorite recipes. + +### Challenges and Vision🚧 +While developing this project, I encountered challenges with implementing image uploads for recipes, building robust user authentication, and managing dynamic ingredient lists. These hurdles taught me to think critically and apply solutions like modular architecture and database management. Looking forward, I envision further features like AI-based recipe recommendations and a mobile app version. + +## Core Features🧩 - User authentication - Recipe creation and sharing @@ -20,7 +35,7 @@ Welcome to SpiceShare! SpiceShare is a recipe-sharing platform where users can e - User profiles - Favorite and save recipes (later updates) -## Prerequisites +## Prerequisites🎯 Before you begin, ensure you have met the following requirements: - Node.js (v14.x or later) @@ -28,7 +43,7 @@ Before you begin, ensure you have met the following requirements: --- this is only used to build tailwind css -## Installation +## Installation⚙️ To run SpiceShare locally, follow these steps: @@ -73,23 +88,21 @@ To run SpiceShare locally, follow these steps: Your local SpiceShare app will now be running at http://127.0.0.1:5000/. -## Usage -SpiceShare is easy to use. Here are the core features: -- Explore Recipes: View recipes from a variety of categories, including detailed instructions and ingredient lists. -- Create & Share Recipes: Registered users can create and share their own recipes. -- User Authentication: Sign up and log in to access personalized features, such as creating recipes or commenting on others' recipes. -- Comment & Interact: Engage with the community by leaving comments and feedback on recipes. +## Usage🍽️ -## Challenges Overcome +### Create Your First Recipe: +SpiceShare is easy to use. Here are the core features: +- Register an account. +- Upload your first recipe by filling in the form with name, ingredients, and instructions. +- Browse recipes shared by others and give feedback theough comments. -1. Dynamic Ingredient Input -The goal was to allow users to dynamically add ingredients, and this required building a custom input field that could store each ingredient in the database as a list. Achieving this functionality pushed us to think outside the box and refine my knowledge of Flask and dynamic form handling. +### Explore Features: +- Search Recipes by category or ingredient. +- Add Ingredients Dynamically using a user-friendly form. -2. User Authentication -Securing user-specific actions (such as editing or deleting recipes) was challenging. Using Flask-Login, I implemented route protection to prevent unauthorized users from accessing certain pages. I also introduced helpful flash messages to guide users through errors or authentication problems. +## Learnings and Next Steps⏭️ -## Learnings and Next Steps ### What I Learned Through the development of SpiceShare, I gained valuable insights into full-stack development, database management, and UI/UX design. I also deepened my understanding of Flask and how to build modular, scalable web applications. @@ -100,7 +113,7 @@ Moving forward, I plan to: - Implement JWT authentication for API expansion. -## Contributing +## Contributing🤝 Contributions to SpiceShare are welcome! Please follow these steps: @@ -112,15 +125,15 @@ Contributions to SpiceShare are welcome! Please follow these steps: Please make sure to adhere to the project's coding standards. -## Related Projects +## Related Projects🔗 If you're interested in recipe-sharing or similar projects, you may also enjoy: - [AllRecipes](https://www.allrecipes.com/) - [CookBook](https://cookbookmanager.com/) -## License +## License📜 -[MIT License](LICENSE) +This project is licensed under the [MIT License](LICENSE). -## Contact +## Contact📧 If you have any questions or feedback, please open an issue on GitHub or contact the maintainer at me@esekyi.tech.