diff --git a/.idea/caches/deviceStreaming.xml b/.idea/caches/deviceStreaming.xml
index 9aaec77..64702e5 100644
--- a/.idea/caches/deviceStreaming.xml
+++ b/.idea/caches/deviceStreaming.xml
@@ -75,6 +75,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Your Central Hub for Task Management Excellence +
++ A modern, cross-platform task management application built with + React Native, Expo, and TypeScript. Manage your daily tasks + efficiently with real-time synchronization, beautiful charts, and + intuitive UI. +
++ TaskNexus is a comprehensive task management solution designed for + modern users who need reliable, efficient, and beautiful task + tracking across all their devices. Built with cutting-edge + technologies and best practices, it offers a seamless experience + whether you're on iOS, Android, or the web. +
++ Designed specifically for efficient task management with an + intuitive interface that gets out of your way. +
++ Optimized performance with real-time updates and smooth animations + throughout the app. +
++ Your data is protected with Supabase authentication and row-level + security policies. +
++ Beautiful charts and statistics to help you understand your + productivity patterns. +
++ The name "TaskNexus" reflects the app's core purpose โ serving as a + central hub (nexus) for all your tasks. It conveys a sense of + connectivity and organization, bringing together tasks from + different aspects of your life into one unified, powerful platform. +
++ TaskNexus follows a modern, scalable architecture pattern with clear + separation of concerns. The application is built using React Native + with Expo, leveraging TypeScript for type safety and Supabase for + backend services. +
+Task-Manager-ReactNative/
+โโโ ๐ฑ app/ # Expo Router screens
+โ โโโ _layout.tsx # Root layout with providers
+โ โโโ index.tsx # Flash/Splash screen
+โ โโโ (tabs)/ # Tab-based navigation
+โ โโโ home.tsx # Task management screen
+โ โโโ stats.tsx # Analytics screen
+โ โโโ login.tsx # Authentication screen
+โ โโโ register.tsx # Registration screen
+โโโ ๐จ components/ # Reusable components
+โ โโโ Chart.tsx # Chart visualizations
+โ โโโ CustomTabBar.tsx # Custom tab bar with theme toggle
+โ โโโ TaskAddModal.tsx # Task creation modal
+โ โโโ TaskItem.tsx # Individual task component
+โโโ ๐ฏ contexts/ # Global state management
+โ โโโ TaskContext.tsx # Task state & operations
+โ โโโ ThemeOverrideContext.tsx # Theme management
+โโโ ๐ง lib/ # Utilities & configuration
+โ โโโ supabaseClient.ts # Supabase initialization
+โโโ ๐
styles/ # Component styles
+โ โโโ HomeScreenStyles.ts
+โ โโโ StatsScreenStyles.ts
+โ โโโ ...
+โโโ ๐ญ constants/ # App constants
+โ โโโ Colors.ts # Theme colors
+โโโ ๐ช hooks/ # Custom React hooks
+โ โโโ usePrevious.ts # Previous state hook
+โโโ ๐ฆ types/ # TypeScript definitions
+โ โโโ types.ts # Shared types
+โโโ ๐๏ธ supabase/ # Database schema
+โ โโโ db.sql # PostgreSQL schema
+โโโ ๐งช __tests__/ # Test files
+โโโ ๐ณ Dockerfile # Container configuration
+โโโ ๐ README.md # Documentation
+
+ Flash Screen
+
+ Home - Light Mode
+
+ Stats - Light Mode
+
+ Home - Dark Mode
+
+ Stats - Dark Mode
+
+ Flash Screen
+
+ Home - Light Mode
+
+ Stats - Light Mode
+
+ Home - Dark Mode
+
+ Stats - Dark Mode
+
+ Home - Light Mode
+
+ Stats - Light Mode
+
+ Home - Dark Mode
+
+ Stats - Dark Mode
+
+ iOS User Experience
+
+ Android User Experience
+
+ + Real-time Synchronization Across Devices +
++ Note: The GIFs and images may not fully represent + the app's current state, as they were captured during development. + The app has since been enhanced with new features and improvements. + Clone the repository to experience the latest version! +
++ React Context API for global state management with TaskContext and + ThemeContext providers +
++ Expo Router for file-based routing with nested layouts and tab + navigation +
++ React Native Reanimated for smooth 60 FPS animations and gesture + handling +
++ Supabase real-time subscriptions for instant synchronization + across devices +
+# Install Expo CLI globally
+npm install -g expo-cli
+ git clone https://github.com/hoangsonww/Task-Manager-ReactNative.git
+cd Task-Manager-ReactNative
+ # Using npm
+npm install
+
+# Or using Yarn
+yarn install
+
+ Create a .env file in the root directory with your
+ Supabase credentials:
+
EXPO_PUBLIC_SUPABASE_URL=your_supabase_url
+EXPO_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
+
+ Run the SQL schema from supabase/db.sql in your
+ Supabase project:
+
-- Creates tasks table with row-level security
+-- Run this in your Supabase SQL editor
+ # Start the Expo development server
+npm start
+
+# Or use Expo CLI directly
+npx expo start
+
+# Clear cache if needed
+npx expo start -c
+ + Press a for Android, i for iOS, or + w for Web +
+
+ Use the shell scripts in the shell/ directory for
+ common tasks:
+
./shell/start.sh - Start the app./shell/format.sh - Format code./shell/reset.sh - Reset project state+ The web version may not display correctly on larger screens and + some features like drag-and-drop may have limited functionality on + web. +
+# Run all tests
+npm test
+
+# Watch mode
+npm run test:watch
+
+# Coverage report
+npm run test:coverage
+
+ Tests are located in the __tests__/ directory using
+ Jest and React Testing Library.
+
# Build and run with Docker Compose
+docker-compose up --build
+
+# Stop containers
+docker-compose down
+ + Note: Docker setup is optimized for the web version of the app. +
+| Column | +Type | +Description | +
|---|---|---|
| id | +UUID | +Primary key | +
| user_id | +UUID | +Foreign key to auth.users | +
| text | +Text | +Task description | +
| color | +Text | +Task color | +
| due_date | +Timestamp | +Due date and time | +
| completed | +Boolean | +Completion status | +
npm start
+ Start the Expo development server
+npm run android
+ Start on Android emulator
+npm run ios
+ Start on iOS simulator
+npm run web
+ Start on web browser
+npm run format
+ Format code with Prettier
+npm test
+ Run test suite
++ TaskNexus is open source and welcomes contributions! Feel free to: +
++ This project is licensed under the MIT License. See + the + LICENSE + file for details. +
++ Note: This project is for educational purposes. + Please credit the original author when using any part of this code. +
+