A modern, clean collection management platform built with Next.js 14, TypeScript, and Supabase.
- 🔐 Authentication: Secure email-based authentication restricted to @iiitdmj.ac.in domain
- 🎨 Modern UI: Clean, Apple-style minimalist design with TailwindCSS and Shadcn UI
- 📱 Responsive: Mobile-first responsive design
- ⚡ Fast: Built with Next.js 14 App Router and React Query
- 🔒 Secure: Supabase backend with proper authentication
- 📊 Dashboard: Beautiful statistics and collection overview
- Frontend: Next.js 14, TypeScript, TailwindCSS
- UI Components: Shadcn UI
- Backend: Supabase
- State Management: React Query
- Styling: TailwindCSS with custom design system
- Node.js 18+
- npm or yarn
- Supabase account
- Clone the repository:
git clone <your-repo-url>
cd collex- Install dependencies:
npm install- Set up environment variables:
cp .env.local.example .env.local- Add your Supabase credentials to
.env.local:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
- Create a new project at supabase.com
- Enable Email authentication in Authentication > Providers
- Copy your project URL and anon key
- Add them to your
.env.localfile
src/
├── app/ # Next.js App Router
│ ├── layout.tsx # Root layout with providers
│ └── page.tsx # Main page with auth flow
├── components/ # Reusable components
│ ├── ui/ # Shadcn UI components
│ ├── auth/ # Authentication components
│ ├── dashboard/ # Dashboard components
│ └── navigation/ # Navigation components
└── lib/ # Utilities and configurations
├── supabase.ts # Supabase client
├── auth.tsx # Authentication context
└── providers.tsx # React Query provider
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is licensed under the MIT License.