Inspiration

for years i was working in restaurants, and i know many of the issues in running a place by yourself. i think that its about time, that a real smart software could be used in favor of the people rather than just offering them solutions that only take more time. the software that is being offered today to run small businesses is really a joke, compared to what we can really have.

What it does

Inventoro provides a comprehensive platform for users to manage their product inventory across multiple warehouses. It focuses on real-time tracking, automated alerts, and data-driven insights to help businesses maintain optimal stock levels and minimize losses due to spoilage or overstocking.

User Authentication and Multi-Warehouse Management:

Users can sign up, sign in, and manage their profiles securely. The system supports multiple warehouses, allowing users to organize inventory across different locations. Each warehouse can have its own set of products and settings. Users are assigned roles (owner, manager, employee, viewer) within each warehouse, controlling their access and permissions.

Comprehensive Inventory Tracking:

Users can add, view, and manage individual products within their warehouses. Each product includes details like name, category, unit, current stock, minimum/maximum stock levels, cost, price, supplier, and location.

Batch Tracking:

Products can be tracked by batches, allowing for precise management of quantities, costs, and, crucially, expiration dates for each specific batch.

Stock Movements:

All inventory changes (in/out) are recorded as stock movements, attributed to specific users and reasons (e.g., purchase, sale, waste, adjustment). This provides a detailed audit trail and feeds into analytics.

Advanced Barcode Scanning Integration:

The application integrates with the Scandit Web SDK for fast and accurate barcode scanning using a device's camera. Scanned barcodes are used to quickly look up products in the user's warehouse inventory. If a product is not found locally, the system automatically queries external databases like Open Food Facts and UPC Item DB via secure API proxies to retrieve global product information (name, category, brand, nutritional info, etc.). This data can then be used to create new products in the user's inventory. Intelligent Alerts and Recommendations:

Expiration Tracking:

The system actively monitors product batches and their expiration dates, providing timely alerts for items that are expiring soon or have already expired. Alerts are categorized by severity (warning, urgent, expired).

Low Stock Alerts:

Users are notified when product stock levels fall below predefined minimum thresholds, prompting reorders.

Usage Recommendations:

Based on expiration dates and consumption patterns, the application suggests which items should be used soon to minimize waste.

Reordering Assistant:

The system can provide intelligent reorder suggestions, taking into account current stock, minimum levels, and estimated consumption rates.

Automated Shopping Lists:

The application can generate smart shopping lists based on inventory needs, consumption patterns, and expiration alerts, helping users to efficiently plan purchases.

How we built it

Frontend: Built with React and TypeScript, providing a modern and type-safe user interface. Styling: Utilizes Tailwind CSS for a highly customizable and utility-first approach to styling, ensuring a clean and responsive design. Icons: Leverages Lucide React for a comprehensive set of crisp, customizable SVG icons. Backend & Database: Powered by Supabase, which provides: PostgreSQL Database: For structured storage of all inventory data, user profiles, and warehouse information. Authentication: Handles user sign-up, sign-in, and session management. Row Level Security (RLS): Ensures data privacy and access control, allowing users to only view and manage data relevant to their warehouses and roles. Database Functions (RPCs): Custom PostgreSQL functions are used for complex logic like searching global products, calculating consumption patterns, and generating shopping suggestions. Barcode Scanning SDK: Integrates the Scandit Web SDK for high-performance barcode recognition directly in the browser. Development Environment: Uses Vite as the build tool and development server, configured with proxy settings to securely access external barcode lookup APIs. Design Philosophy The project emphasizes a clean, intuitive, and highly functional user experience. The UI is designed to be visually appealing and easy to navigate, with a focus on providing critical inventory information at a glance. The integration of intelligent features aims to transform traditional inventory management into a proactive and waste-reducing process.

Challenges we ran into

implementing the camera scanner was a terrible hurdle. actually it still is. using a hardware device requires an external sample code and api, while the ai seems to either "inventing" its own api, or be sure that the problem lies in something that it is not.

creating mathematic calculations, analytics and statistics could be very tiring process....

Accomplishments that we're proud of

actually getting a working app with the scanner. even when now its back to a state of not working, i have the confidence that i would be able to arrive to production.

What we learned

i learned a bit more about working with bolt. i love the fact that it allows me to edit the code. i managed to do the little text changes, and to arrive to some key understandings by editing and reading the code. i learned another step about working with vibe coding environments. i hope i would learn why it sometimes break itself... :)

What's next for Inventoro

i intend to release it to public, with or without the hackathon. then i will see if i manage to find clients that would use it for free, and provide me feedback. i really look to help people. i have several other ideas for future features, but i first want to receive the needs from the clients, before to decide the exact direction of development.

Built With

  • bolt
  • openfoodfacts
  • scandit
Share this project:

Updates

Submission history