Skip to content

Repository files navigation

Third Eye - Location Tracking & Sharing

Third Eye is a Next.js application that allows users to track and share their location using the OwnTracks mobile app. It provides real-time location tracking, journey history, and friend-based location sharing.

Features

  • 🔐 Authentication: Secure user authentication with Supabase
  • 📍 Real-time Location Tracking: Track your location in real-time using OwnTracks
  • 🗺️ Interactive Maps: View your location history on an interactive map
  • 🚶 Journey History: Track and view your journey history with statistics
  • 👥 Friend Management: Add friends and share your location with them
  • 🔒 Privacy Controls: Control who can see your location and journey history
  • 📱 Mobile Integration: Seamless integration with OwnTracks mobile app

Tech Stack

  • Framework: Next.js 14+ (App Router)
  • Language: TypeScript
  • Database: Supabase (PostgreSQL)
  • Authentication: Supabase Auth
  • UI Components: shadcn/ui
  • Styling: Tailwind CSS
  • Maps: Leaflet / React Leaflet
  • Forms: React Hook Form + Zod

Quick Start

Prerequisites

  • Node.js 18+ and npm/yarn
  • A Supabase account
  • OwnTracks mobile app (iOS/Android)

Installation

  1. Clone the repository:
git clone <repository-url>
cd third-eye
  1. Install dependencies:
npm install
  1. Set up environment variables:
cp .env.example .env.local
  1. Configure your .env.local file with your Supabase credentials and OwnTracks API key:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_supabase_service_role_key
NEXT_PUBLIC_APP_URL=http://localhost:3000
OWNTRACKS_API_KEY=your_owntracks_api_key
  1. Set up the database (see SUPABASE_SETUP.md)

  2. Run the development server:

npm run dev
  1. Open http://localhost:3000 in your browser

Documentation

Project Structure

third-eye/
├── app/                    # Next.js app directory
│   ├── (auth)/            # Authentication pages
│   ├── (dashboard)/       # Dashboard pages
│   └── api/               # API routes
├── components/            # React components
│   ├── auth/              # Authentication components
│   ├── dashboard/         # Dashboard components
│   ├── map/               # Map components
│   ├── journeys/          # Journey components
│   ├── friends/           # Friend management components
│   ├── settings/          # Settings components
│   └── ui/                # shadcn/ui components
├── lib/                   # Utility libraries
│   ├── supabase/          # Supabase clients
│   ├── types/             # TypeScript types
│   └── utils/             # Utility functions
└── docs/                  # Documentation

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages