Skip to content

Repository files navigation

BaliGuide

A comprehensive travel guide platform for Bali, featuring places, events, tours, and local experiences.

Project Structure

BaliGuid/
├── backend/                 # Node.js Express API
│   ├── src/
│   │   ├── api/v1/         # API routes & controllers
│   │   ├── database/       # PostgreSQL models & migrations
│   │   ├── services/       # Business logic
│   │   └── lib/            # Utilities (auth, email, storage)
│   ├── Dockerfile
│   └── package.json
│
├── frontend/
│   ├── web/                # Next.js 14 Web Application
│   │   ├── src/app/        # App Router pages
│   │   ├── src/components/ # React components
│   │   ├── src/lib/        # API client, utilities
│   │   └── package.json
│   │
│   └── mobile/             # Expo React Native App
│       ├── app/            # Expo Router screens
│       ├── android/        # Android native project
│       ├── src/            # Stores, API, types
│       └── package.json
│
├── nginx/                  # Production nginx configuration
├── docker-compose.yml      # Development environment
└── docker-compose.production.yml

Tech Stack

Backend

  • Node.js + Express + TypeScript
  • PostgreSQL + Sequelize ORM
  • Redis for caching
  • JWT authentication
  • Cloudinary for images

Web Frontend

  • Next.js 14 (App Router)
  • TypeScript
  • Tailwind CSS
  • Zustand for state

Mobile App

  • Expo + React Native
  • Expo Router
  • TypeScript
  • Zustand for state

Quick Start

Development (Docker)

# Start all services
docker-compose up -d

# Backend: http://localhost:5000
# Frontend: http://localhost:3000

Mobile App

cd frontend/mobile
npm install
npx expo start

For iOS (requires Mac):

./build-ios.sh
open ios/BaliGuide.xcworkspace

For Android:

cd android
./gradlew assembleDebug

API Documentation

API runs on http://localhost:5000/api/v1

  • POST /auth/register - Register user
  • POST /auth/login - Login
  • GET /places - List places
  • GET /events - List events
  • GET /tours - List tours

Environment Variables

See .env.example in backend folder.

License

Private - All rights reserved

Live Demo

Check out the live version: baliguid.vercel.app

About

BaliGuide - Bali Travel Guide Platform

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages