Pantry Tracker is a pantry management application that allows users to keep track of pantry items by adding or removing items and updating their quantities. The project is built using Next.js as the frontend framework, Material UI for the UI components, and Firebase as the backend service.
- Add new pantry items
- Remove existing pantry items
- Update the quantities of pantry items
- User authentication with Firebase
- Responsive design using Material UI
- Next.js - A React framework for building server-side rendered applications.
- React - A JavaScript library for building user interfaces.
- Material UI - A popular React UI framework for building responsive and accessible components.
- Firebase - A platform developed by Google for creating mobile and web applications, used here for backend services such as authentication and database.
To get started with the Pantry Tracker project, follow these steps:
-
Clone the repository
git clone https://github.com/your-username/pantry-tracker.git cd pantry-tracker
-
Install dependencies
npm install
-
Set up Firebase
- Create a Firebase project at Firebase Console.
- Enable Firestore and Authentication services.
- Obtain your Firebase configuration and create a
.env.local
file in the root of your project with the following environment variables:NEXT_PUBLIC_FIREBASE_API_KEY=your-api-key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-auth-domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your-storage-bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your-messaging-sender-id NEXT_PUBLIC_FIREBASE_APP_ID=your-app-id
-
Run the development server
npm run dev
-
Open the application
- Open your browser and navigate to http://localhost:3000.
-
Sign Up / Sign In
- Create a new account or sign in with your existing account using the Firebase Authentication service.
-
Manage Pantry Items
- Add new items to your pantry by providing the item name and quantity.
- Update the quantity of existing items.
- Remove items that you no longer need.
Contributions are welcome! If you have any ideas, suggestions, or bug reports, feel free to create an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.