A modern marketplace platform built with Next.js, React, TypeScript, Tailwind CSS, and Supabase.
- Browse vintage clothing listings
- Real-time auction bidding system
- Category filtering and search
- Seller profiles with ratings
- Transaction history
- Discover local vintage meetups
- Event registration and management
- Location-based event discovery
- Community engagement
- Discussion forums
- User profiles with reputation
- Like and reply to posts
- Direct messaging between users
- Secure authentication with Supabase
- User profiles and preferences
- Seller reputation system
- Transaction history
- Framework: Next.js 16
- Language: TypeScript
- Styling: Tailwind CSS v4
- Database: Supabase (PostgreSQL)
- Auth: Supabase Auth
- UI Components: shadcn/ui
- Deployment: Vercel
- Node.js 18 or higher
- npm or yarn
- Supabase account
- Clone the repository
git clone <repository-url>
cd thriftup- Install dependencies
npm install- Set up environment variables
cp .env.local.example .env.local
# Edit .env.local with your Supabase credentials- Set up database
- Open Supabase SQL Editor
- Run all SQL from
scripts/setup-database.sql
- Run development server
npm run dev├── app/
│ ├── api/ # API routes
│ ├── auth/ # Auth pages (login, signup)
│ ├── marketplace/ # Marketplace page
│ ├── auctions/ # Auctions page
│ ├── events/ # Events page
│ ├── community/ # Community page
│ ├── layout.tsx # Root layout
│ ├── page.tsx # Home page
│ └── globals.css # Global styles
├── components/ # Reusable components
├── lib/ # Utility functions
├── scripts/ # Database migrations
└── public/ # Static assets
GET /api/listings- Get all listingsPOST /api/listings- Create new listing
GET /api/auctions- Get active auctionsPOST /api/auctions- Create new auction
POST /api/bids- Place a bid
GET /api/events- Get upcoming eventsPOST /api/events- Create new event
- users - User profiles and auth
- listings - Marketplace listings
- auctions - Active auctions
- bids - Auction bids
- events - Thrift-meet events
- event_attendees - Event registrations
- community_posts - Discussion posts
- post_replies - Comment replies
- messages - Direct messages
- orders - Transaction history
Built with Supabase Auth:
- Email/password authentication
- JWT tokens stored in secure cookies
- Row Level Security for data protection
- Session management
See DEPLOYMENT.md for detailed instructions.
Quick Deploy to Vercel:
npm i -g vercel
vercel- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
MIT License - see LICENSE file for details
For issues and questions:
- Open an issue on GitHub
- Check existing documentation
- Contact support team
- Payment integration (Stripe)
- User notifications
- Advanced search and filters
- Seller shop pages
- Review system
- Wishlist feature
- Mobile app
- Analytics dashboard