Welcome to Recipen – a recipe website for food enthusiasts to explore, create, and share their culinary experiences. Indulge in a community-driven platform where food enthusiasts share their cherished recipes and captivating food blogs. Subscribe to the pro version to share your own recipes and to unlock a realm of taste, culture, and creativity.
Live Site: https://recipen.vercel.app/
- Authentication: Users can securely create accounts and log in to access personalized features and content.
- Access & Refresh Token: Implemented access and refresh token mechanism for enhanced security during user authentication.
- Authentication State Persistence: User authentication state is now persisted across sessions, providing a seamless user experience.
- Storing Tokens in Cookies: Tokens are stored in secure cookies for better protection against cross-site scripting (XSS) attacks.
- Recipes: Explore a rich collection of authentic recipes contributed by the community, covering a wide range of cuisines and tastes.
- Food Blogs: Engage with insightful and creative food blogs written by enthusiasts, offering valuable insights and cooking inspiration.
- Stripe Payment Integration: Seamlessly integrated Stripe for secure payment processing, enhancing user experience during transactions.
- One-Time Payment Subscription: Offer users the option to subscribe with a one-time payment, unlocking exclusive features and benefits.
- Pro User Access: Pro users enjoy the privilege of adding and deleting recipes and blogs, creating a dynamic and engaging platform.
- Admin Dashboard: Admins have access to a dashboard for managing users, recipes, and blogs
- User Profile: Each user has a personalized profile where they can manage their information.
- Contact Us Page: A dedicated page for users to reach out with questions, concerns, or feedback, fostering communication.
- Chatbot: A chatbot that provides one to one assistance with the maintainers of the project.
- Save and Unsave Favorite Recipes: Users can curate their own collection of favorite recipes for easy access and cooking inspiration.
- Rate and Comment on Recipes: Registered users can provide ratings and comments on recipes, enhancing the community interaction.
- Comment on Blogs: Engage in discussions by leaving comments on the food blogs, sharing thoughts and ideas.
- Share Recipe on Social Media: Users can effortlessly share their favorite recipes on various social media platforms.
- Fork this repository
- Open terminal or command prompt on your local machine. Run the following command to clone the repository:
- Open the project and rename .env.example files to .env in both client and server directory.
- Add your own environment variables to these both files.
- Add http://localhost:5173 and http://localhost:5000 to allowedOrigins array present in the path server/config/allowedOrigins.
- To run the frontend, open a new terminal and run 'cd client/' to go to client directory and execute:
- To run the backend, open a new terminal and run 'cd server/' to go to server directory and execute:
- Open http://localhost:5173/strong> from your browser to run the webapp.
git clone https://github.com/your-username/your-repo.git
Replace your-username with your GitHub username and your-repo with the name of your repository.
npm run dev
nodemon index.js
- After running the webapp on your machine sign up on the website.
- Now open your MongoDB collection and manually add the Admin element in the array of roles field for the user you want to make admin and then Sign in back on the site.
- Now you will be able to access the admin dashboard.
Terms and conditions for use, reproduction and distribution are under the MIT License.