Skip to content

0xASR-dev/monastery360

Repository files navigation

🏛️ Monastery360

A comprehensive web application for exploring Buddhist monasteries with virtual tours, audio guides, and interactive maps.

🚀 Features

  • Virtual Tours: Immersive 360° monastery experiences
  • Audio Guides: Narrated tours for each monastery
  • Interactive Maps: Explore monastery locations
  • Calendar System: Browse monastery events and activities
  • Archives: Historical documents and information
  • User Authentication: Secure login and profile management

🛠️ Tech Stack

  • Frontend: React Router v7, Vite, TailwindCSS
  • Backend: Vercel Serverless Functions
  • Database: Neon PostgreSQL
  • Deployment: Vercel
  • Authentication: @auth/core

📁 Project Structure

monastery360/
├── apps/
│   └── web/                    # Main web application
│       ├── src/                # Source code
│       │   ├── app/           # App routes and pages
│       │   ├── components/    # Reusable components
│       │   ├── context/       # React contexts
│       │   └── utils/         # Utility functions
│       ├── api/               # Serverless API functions
│       ├── public/            # Static assets
│       └── package.json       # Dependencies
└── vercel.json                # Vercel deployment config

🚀 Development

Prerequisites

  • Node.js 18+
  • npm or yarn

Getting Started

  1. Clone the repository

    git clone https://github.com/0xASR-dev/monastery360.git
    cd monastery360
  2. Install dependencies

    cd apps/web
    npm install
  3. Set up environment variables

    cp .env.example .env
    # Edit .env with your database and auth credentials
  4. Start development server

    npm run dev
  5. Open browser

    http://localhost:5173
    

📦 Deployment

The application is configured for automatic deployment on Vercel:

  1. Connect to Vercel

    • Connect your GitHub repository to Vercel
    • Deploy from the root directory (vercel.json handles the monorepo setup)
  2. Environment Variables Set the following environment variables in Vercel:

    • DATABASE_URL - Your Neon PostgreSQL connection string
    • AUTH_SECRET - Secret for authentication
    • Other auth provider credentials as needed

🗃️ Database

The application uses Neon PostgreSQL with the following main tables:

  • monasteries - Monastery information
  • users - User accounts
  • bookings - Event bookings
  • events - Monastery events
  • archives - Historical documents

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

📄 License

This project is licensed under the MIT License.

🙏 Acknowledgments

  • Buddhist monasteries for their cultural heritage
  • Contributors and maintainers
  • Open source community

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors