Locarater is a comprehensive platform where users can discover, rate, and review various locations. Users can contribute by adding new locations and sharing their experiences, creating a dynamic community-driven ecosystem for location-based recommendations.
- Next.js 15
- React 19
- TypeScript
- Tailwind CSS 4
- Zustand 5
- Axios
- Formik & Yup
- date-fns
- Lucide React
- Radix UI Components
- Headless UI
- Next Themes
- Node.js
- Express
- TypeScript
- MongoDB & Mongoose
- JWT Authentication
- Bcrypt
- Nodemailer
- Multer
- Supabase Storage
- View locations
- Search functionality
- Apply filters
- View location details
- Create and edit profile
- Add new locations
- Rate and review locations
- Email verification system
- Manage their added locations
- Like, dislike and comment on feed items
- Earn badges and view badge notifications
- Manage all content
- User management
- Configure site settings
- Moderate location submissions
- Community-driven location submissions
- Add/edit/delete locations by users
- Category system
- Star rating
- Written reviews
- Like/dislike functionality
- Comment system
- Review reporting
- Activity feed with location additions
- Review posts from followed users
- Badge achievement notifications
- Social interactions (likes, dislikes, comments)
- Comment counter display
- Content reporting
- Text-based search
- Category filters
- Rating filters
- Sorting options
- Profile customization
- Review history
- Favorite locations
- Notification preferences
- Email verification
- Location statistics
- Review management
- Profile settings
- Notifications
.
βββ apps
β βββ api
β β βββ src
β β β βββ controllers
β β β βββ hooks
β β β βββ index.ts
β β β βββ middleware
β β β βββ models
β β β βββ public
β β β βββ routes
β β β βββ scripts
β β β βββ seeds
β β β βββ services
β β β βββ types
β β β βββ utils
β βββ web
β βββ public
β βββ src
β β βββ app
β β βββ assets
β β βββ components
β β βββ config
β β βββ constants
β β βββ hooks
β β βββ lib
β β βββ providers
β β βββ services
β β βββ store
β β βββ types
- Project setup
- Backend API
- Frontend structure
- Authentication system
- Email verification
- Location CRUD operations
- User-driven location submissions
- Photo upload
- Search and filtering
- Location moderation
- Comments and ratings
- Like system
- Response system
- Reporting
- Activity feed
- Review posts
- Badge notifications
- Post interactions (likes, dislikes)
- Comment system
- Interaction counters
- Profile management
- User authentication
- Email verification
- Favorites
- Notifications
- Settings
- Location management
- Statistics
- User management
- Site settings
- Node.js 18.x
- MongoDB
- Supabase
- npm or yarn
- Clone the repository
git clone https://github.com/afurgapil/locarater.git
cd locarater
- Install dependencies
npm install
- Set up environment variables
# Create .env files in both apps/web and apps/api directories
cp apps/web/.env.example apps/web/.env
cp apps/api/.env.example apps/api/.env
- Start development servers
npm run dev
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.