Plan My Plate is a meal planning application that helps users organize recipes, generate shopping lists, and manage ingredients efficiently. It features a React-based frontend and an Express/Supabase backend.
- Recipe selection and serving size adjustment.
- Ingredient aggregation and shopping list generation.
- LocalStorage integration for saving and retrieving shopping lists.
- Supabase integration for database and authentication services.
Before running the project, ensure you have the following installed:
- Node.js (v16 or higher)
- npm (v7 or higher)
- Supabase account and instance
To run the frontend application:
- Navigate to the
frontenddirectory:cd frontend - Install the dependencies:
npm install
- Start the development server:
The application will typically be available at
npm run dev
http://localhost:5173.
To run the backend application:
-
Navigate to the
backenddirectory:cd backend -
Install the dependencies:
npm install
-
Start the server:
npm start
The application will typically be available at
http://localhost:8080.Note: Ensure your Supabase instance is configured and running if the backend relies on it for database and authentication services. Refer to Supabase documentation for setup.
Required environment variables for the backend:
PORT=8080
SUPABASE_URL=your_supabase_url_here
SUPABASE_ANON_KEY=your_supabase_anon_key_hereplanMyPlate/
├── backend/ # Backend code (Express/Supabase)
│ ├── public/ # Static assets
│ ├── src/ # Application source code
│ ├── package.json # Backend dependencies
│ └── README.md # Backend-specific instructions
├── frontend/ # Frontend code (React/Vite)
│ ├── public/ # Static assets
│ ├── src/ # Application source code
| ├── vercel.json
│ ├── package.json # Frontend dependencies
│ └── README.md # Frontend-specific instructions
├── README.md # Project-level instructions
└── notes.md # Additional notes
- Clone the repository:
git clone https://github.com/BaconPancakez/planMyPlate
- Navigate to the project directory:
cd planMyPlate - Follow the instructions for running the frontend and backend.
Contributions are welcome! Please fork the repository and submit a pull request with your changes.
This project is licensed under the MIT License. See the LICENSE file for details.