Milikku is a modern, personal inventory management web application. It helps you keep track of your belongings, organize them by categories and locations, and easily manage items you lend to others. Built with a sleek, minimalist Notion-style design, it provides an intuitive user experience on both desktop and mobile devices.
- Inventory Tracking: Manage your personal items with details like purchase price, current value, serial numbers, and warranty dates.
- Organization: Categorize items and assign them to specific storage locations.
- Receipt & Photo Management: Upload images of your items and their purchase receipts directly to the cloud.
- Lending System: Keep track of who borrowed what, when they borrowed it, and their expected return date. Overdue items are highlighted automatically.
- PWA Ready: Install Milikku on your mobile device as a Progressive Web App for quick access.
- Dark/Light Mode: Full support for both themes to suit your preference.
- Framework: Nuxt 4
- Database: Supabase (PostgreSQL)
- ORM: Drizzle ORM
- Styling: Tailwind CSS v4
- UI Components: shadcn-vue & Radix Vue
- State Management: Nuxt
useState&@vueuse/core
Make sure you have Node.js installed, then install the dependencies:
npm installCopy the .env.example file to .env (if applicable) and configure your Supabase connection strings:
DATABASE_URL="postgres://..."
NUXT_PUBLIC_SUPABASE_URL="https://..."
NUXT_PUBLIC_SUPABASE_KEY="..."Apply the database schema changes using Drizzle:
npm run db:generate
npm run db:migrateStart the development server on http://localhost:3000:
npm run devBuild the application for production:
npm run buildYou can then preview the built application locally:
npm run previewFound a bug or have a feature request? Please feel free to open an issue on GitHub.
Contributions are always welcome! If you'd like to improve Milikku, simply fork the repository, make your changes, and submit a Pull Request.