Skip to content

Latest commit

Β 

History

History
117 lines (79 loc) Β· 2.95 KB

File metadata and controls

117 lines (79 loc) Β· 2.95 KB

Localite πŸ“πŸŽ‰

Localite is a mobile app designed to help users discover vibrant, relevant, and nearby eventsβ€”filtered intelligently based on location, age, interests, and group affiliations. Built with React Native, Supabase, and Expo, Localite delivers a seamless, engaging experience backed by efficient real-time backend logic.


πŸš€ Features

  • 🌍 Location-Based Recommendations
    Discover upcoming events nearby using GPS and personalized filtering.

  • 🧠 Smart Ranking Engine
    Edge Function ranks events by location, timing, and age demographics.

  • πŸ‘₯ Group System
    Create, join, and manage groups. Share events publicly or restrict them to specific groups.

  • πŸ“† Event Creation & Calendar View
    Post events with timing, vibe tags, and locations. Explore via calendar UI.

  • πŸ“Έ Profile Customization
    Crop profile images in a circular format and store them securely with Supabase.

  • πŸ”’ Secure Auth & Deep Linking
    Supabase Auth for login, password reset, and deep link redirection.

  • πŸ”„ Efficient Pagination
    Offset-based backend pagination for smooth event loading.


πŸ› οΈ Tech Stack

  • Frontend: React Native + Expo
  • Backend: Supabase (Postgres, Auth, Edge Functions)
  • Maps & Location: Google Places API, Expo Location
  • Image Upload: react-native-image-crop-picker, Supabase Storage

🧱 Project Structure

localite/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ tabs/
β”‚   β”‚   β”œβ”€β”€ explore/           # Event discovery screen
β”‚   β”‚   └── groups/            # Group management screens
β”‚   β”œβ”€β”€ components/            # Shared UI components
β”‚   └── lib/
β”‚       └── supabase.ts        # Supabase client setup
β”œβ”€β”€ types/                     # TypeScript models (UserEvent, Group, etc.)
β”œβ”€β”€ supabase/
β”‚   └── functions/
β”‚       └── rank_events/       # Edge function for event ranking

βš™οΈ Getting Started

Follow these steps to get Localite running locally:

1. πŸš€ Clone the Repository

git clone https://github.com/yourname/localite.git
cd localite

2. πŸ“¦ Install Dependencies

npm install

3. πŸ“± Start the App

npx expo start

4. πŸ” Environment Configuration

Create a .env file in the root of your project and add your Supabase credentials:

SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=your-anon-key

Alternatively, configure these directly inside lib/supabase.ts.

5. ⚑ Deploy Edge Function

Navigate to the Supabase functions directory and deploy the ranking function:

cd supabase/functions
supabase functions deploy rank_events

πŸ“Œ Roadmap

  • Interest-based recommendation engine
  • In-app chat for event discussions
  • RSVP system
  • Push notifications for new or nearby events

πŸ‘¨β€πŸ’» Authors

  • Ezra Akresh
  • Anshdeep Singh