Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

ATS527/SplitZone

Repository files navigation

SplitZone

SplitZone is a modern React Native application designed for splitting group expenses. Built with Expo and powered by Convex for the backend, it offers a seamless experience for managing shared costs.

πŸš€ Tech Stack

  • Framework: React Native with Expo (SDK 54)
  • Routing: Expo Router (v6) - File-based routing
  • Backend & Database: Convex - Real-time backend as a service
  • Styling: NativeWind (Tailwind CSS)
  • Authentication: Convex Auth
  • Icons: Lucide React Native
  • Linting & Formatting: Biome, ESLint

πŸ› οΈ Prerequisites

Before you begin, ensure you have the following installed:

πŸ“¦ Installation

  1. Clone the repository:

    git clone <repository-url>
    cd SplitZone
  2. Install dependencies:

    npm install
  3. Setup Convex Backend: Initialize and sync your Convex backend project:

    npx convex dev

    Follow the prompts to log in and configure your project.

πŸƒβ€β™‚οΈ Running the App

  1. Start the development server:

    npm start
    # or
    npx expo start
  2. Open the app:

    • Mobile: Scan the QR code with the Expo Go app (Android) or Camera app (iOS).
    • Emulator: Press a for Android or i for iOS simulator (requires setup).
    • Web: Press w to run in the browser.

πŸ“‚ Project Structure

SplitZone/
β”œβ”€β”€ app/ # Expo Router file-based routes
β”‚ β”œβ”€β”€ (authed)/ # Protected routes (Home, Groups, Settings)
β”‚ β”œβ”€β”€ (public)/ # Public routes (Login, etc.)
β”‚ └── _layout.tsx # Root layout
β”œβ”€β”€ components/ # Reusable UI components
β”œβ”€β”€ convex/ # Backend functions (queries, mutations) and schema
β”œβ”€β”€ assets/ # Images and fonts
β”œβ”€β”€ global.css # Global Tailwind CSS styles
└── package.json # Dependencies and scripts

✨ Features

  • User Authentication: Secure login and session management via Convex Auth.
  • Group Management: Create new groups or join existing ones using invite codes.
  • Real-time Updates: Instant improvements and data syncing powered by Convex.
  • Modern UI: Clean and responsive interface built with NativeWind.

🀝 Contributing

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License.

About

a group splitting app made with react native + convex db

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /