OffGrid is a mobile application designed to help users eliminate digital distractions, build intentional focus habits, and reclaim deep work. By combining structured focus modes with cloud-backed tracking, OffGrid puts digital noise out of reach when you need to perform at your best.
- Authentication & Profiles: Secure authentication powered by Supabase with automatic user profile creation.
- Structured Focus Modes:
- Impulse Mode: Instant lockdown sessions for immediate protection from digital noise.
- Scheduled Mode: Planned focus slots aligned with your daily workflow.
- Randomizer Mode: Variable focus intervals designed to train concentration resilience.
- Analytics & History: Session tracking to monitor focus trends, total deep-work hours, and session consistency.
- Modern Mobile UI: Built with clean design system principles, complete with dynamic bottom-tab navigation and safe-area inset handling across modern Android and iOS devices.
- Framework: React Native / Expo (TypeScript)
- Navigation: React Navigation (Bottom Tabs, Native Stack)
- Backend & Database: Supabase (PostgreSQL, Row Level Security, Auth Services)
- Icons & Styling: Expo Vector Icons (
Ionicons), React Native StyleSheet,react-native-safe-area-context
- Node.js (v18 or higher)
- Expo Go application on your mobile device (iOS / Android)
- A Supabase project configured with Auth services
- Clone the repository:
git clone [https://github.com/YOUR_USERNAME/offgrid-app.git](https://github.com/YOUR_USERNAME/offgrid-app.git) cd offgrid-app Install dependencies:
Bash npm install Configure Environment Variables: Create a .env file in the root directory and add your Supabase credentials:
Code snippet EXPO_PUBLIC_SUPABASE_URL=https://your-supabase-project.supabase.co EXPO_PUBLIC_SUPABASE_ANON_KEY=your-supabase-anon-key Start the Development Server:
Bash npx expo start Launch on Device: Scan the generated QR code using the Expo Go application on your phone.
📂 Project Structure Plaintext offgrid-app/ ├── context/ │ └── AuthContext.tsx # Supabase authentication state provider ├── lib/ │ └── supabase.ts # Supabase client instantiation & storage engine ├── screens/ │ ├── AuthScreen.tsx # Sign-in and Sign-up authentication layout │ ├── FocusScreen.tsx # Focus mode selection and session launcher │ ├── StatsScreen.tsx # Focus history and performance analytics │ └── SettingsScreen.tsx # Account management and sign-out controls ├── App.tsx # App entry point & Safe Area Provider ├── MainNavigation.tsx # Bottom Tab Navigator configuration ├── README.md # Project documentation └── package.json # Dependencies and Expo scripts 📜 License Distributed under the MIT License.
Once created, run your Git commands:
git add .
git commit -m "feat: initial commit with auth, tab navigation, and readme"
git push -u origin main