Welcome to the RecipeHub wiki! This is the official documentation for the RecipeHub recipe-sharing platform. Here, you'll find an overview of the project, how to get started, the current status, and guidelines for contributing.
Table of Contents
- Introduction
- Features
- Technology Stack
- Installation & Setup
- Folder Structure
- API Documentation
- Roadmap
- Contributing
RecipeHub is a platform where users can share and explore recipes. Whether you are a professional chef or just a home cook, RecipeHub offers a user-friendly experience to create, discover, and share culinary masterpieces. The platform supports features like image uploads, recipe categorization, and user interaction through ratings and comments.
- User authentication (sign up, log in)
- Add, update, and delete recipes
- Recipe categories and tags
- Image upload for recipes
- User profile management
- Rating and commenting on recipes
- Search functionality to find recipes by name, category, or tags
- Frontend: Next.js, React, TypeScript
- Backend: Node.js, Prisma, PostgreSQL
- Authentication: NextAuth.js
- Storage: Supabase for image hosting
- Database: PostgreSQL (via Prisma ORM)
- UI Components: Tailwind CSS, Radix UI
- Deployment: Vercel
Ensure you have the following installed:
- Node.js (v16+)
- PostgreSQL
- Supabase account (for image hosting)
git clone https://github.com/TajwarSaiyeed/recipehub-recipe-sharing-platform.git
cd recipehub-recipe-sharing-platform
npm install
Create a .env file in the root directory and add your environment variables:
DATABASE_URL=your_postgresql_database_url
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
NEXTAUTH_URL=your_application_url
npm run dev
5. Open the app at http://localhost:3000.
.
├── components # Reusable UI components
├── pages # Next.js pages and API routes
├── prisma # Prisma schema and migrations
├── public # Public assets like images
├── styles # Global stylesheets
├── utils # Helper functions and utilities
└── README.md # Project overview and instructions
Pending ....
- Implement basic recipe CRUD operations
- Add authentication with NextAuth.js
- Image upload support via Supabase
- Implement user profile management
- Add social sharing options
- Improve search functionality
- Build mobile responsiveness
We welcome contributions! Please follow these steps:
- Fork the repository.
- Create a new feature branch:
git checkout -b feature/your-feature.
- Commit your changes:
git commit -m 'Add your feature'.
- Push to the branch:
git push origin feature/your-feature.
- Open a pull request.