GitHunt

Locagram

A social web application focused on sharing and exploring reviews of real-world locations. Users can create posts linked to specific places, describe their experiences, and interact with other users through comments and likes.

Features

πŸͺ Location-Based Reviews

  • Create posts linked to specific Google Maps locations
  • Add photos, ratings, and detailed descriptions
  • Automatic location association with map coordinates

πŸ‘₯ Social Interaction

  • Follow other users and see their posts in your personalized feed
  • Like and comment on location reviews
  • Build a community around shared experiences

πŸ—ΊοΈ Discovery & Exploration

  • Browse reviews through multiple interfaces:
    • Main feed with recent/popular posts
    • Interactive map showing reviewed places
    • Search functionality for locations and keywords
  • Filter content by category, rating, or proximity

🏒 Business Management

  • Location owners can claim their places
  • Verified badges for Location Management accounts
  • Comprehensive location pages with aggregated reviews and ratings

πŸ“± User Profiles

  • Personal profiles with post history
  • Customizable profile information and photos
  • Follower/following system

Tech Stack

  • Frontend: Next.js 16 with App Router, TypeScript, React 19
  • Styling: Tailwind CSS, shadcn/ui components
  • Database: Drizzle ORM with Turso (SQLite-compatible)
  • Authentication: better-auth
  • State Management: TanStack Query for server state
  • Forms: React Hook Form

Getting Started

Prerequisites

  • Node.js 18+ and pnpm
  • Local Turso database instance

Installation & Setup

  1. Clone the repository and install dependencies:
pnpm install
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
  1. Start the local database:
pnpm db
  1. Push schema and seed data:
pnpm db:push
pnpm db:seed
  1. Start the development server:
pnpm dev
JosefKuchar/pv247-project | GitHunt