SNACKER is an innovative vending machine system that seamlessly integrates hardware and software. This system allows users to select, order, and purchase snacks via a dedicated web app, generating a unique QR code for each order, which can be scanned at the vending unit.
- Wallet-Based System: Streamlines transactions for frequent users. 💸
- QR Code Integration: Each order generates a unique QR code for easy vending. 📲
- Seamless Communication: Smooth interaction between the Raspberry Pi and the web app through a shared database. 🤝
- Progressive Web App (PWA): Ensures the app is accessible and performs well on all devices. 📱
- Order & Payment: Users select and order snacks via the web app, paying through the wallet system.
- QR Code Generation: A unique QR code is generated for each order.
- Vending: Users scan the QR code at the vending machine to retrieve their items.
- Smooth Operation: The Raspberry Pi, connected to the vending unit, communicates with the web app via Firebase.
-
Clone the repository:
git clone https://github.com/yourusername/SNACKER.git
-
Install dependencies:
npm install
-
Set up external services:
- Set up your own Razorpay, Clerk, and Firebase accounts.
- Use the environment variables shown in the
.env.local.sample
file. - Replace the placeholder values in
.env.local.sample
with your actual account values and rename the file to.env.local
.
-
Run the app:
npm run dev
This project was made possible through the dedication and hard work of a 10-member team, along with the invaluable support of our faculty advisors.
This project is licensed under the MIT License.