{"id":38011564,"url":"https://github.com/dewmal/focusnet","last_synced_at":"2026-01-16T19:21:00.924Z","repository":{"id":298417072,"uuid":"999500466","full_name":"dewmal/focusnet","owner":"dewmal","description":null,"archived":false,"fork":false,"pushed_at":"2025-06-11T02:28:27.000Z","size":278,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-11T02:36:56.792Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dewmal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-10T10:48:36.000Z","updated_at":"2025-06-11T02:27:00.000Z","dependencies_parsed_at":"2025-06-11T02:38:21.544Z","dependency_job_id":"ba40afd3-d206-4310-b7e3-ce67d022b54e","html_url":"https://github.com/dewmal/focusnet","commit_stats":null,"previous_names":["dewmal/focusnet"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/dewmal/focusnet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dewmal%2Ffocusnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dewmal%2Ffocusnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dewmal%2Ffocusnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dewmal%2Ffocusnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dewmal","download_url":"https://codeload.github.com/dewmal/focusnet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dewmal%2Ffocusnet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28481675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-16T19:21:00.589Z","updated_at":"2026-01-16T19:21:00.908Z","avatar_url":"https://github.com/dewmal.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FocusNest 🎯\n\n**Master your Day with FocusNest** - A beautiful, production-ready time-blocking and focus management app built with React Native and Expo.\n\n![FocusNest Banner](https://images.pexels.com/photos/6801648/pexels-photo-6801648.jpeg?auto=compress\u0026cs=tinysrgb\u0026w=1200\u0026h=400\u0026fit=crop)\n\n## 🌟 Overview\n\nFocusNest is a comprehensive productivity app that helps you master your day through intelligent time-blocking, deep focus sessions, and reflective learning. Built with modern React Native and Expo technologies, it offers a seamless experience across all platforms.\n\n### ✨ Key Features\n\n- **🎯 Time Blocking**: Create and manage focused work sessions with specific tasks\n- **⚡ Deep Focus Mode**: Immersive, distraction-free focus sessions with timer\n- **📊 Weekly Analytics**: Track your productivity patterns and progress\n- **💭 Daily Reflection**: Learn from your sessions and improve over time\n- **🎨 Beautiful Design**: Apple-level aesthetics with smooth animations\n- **🌙 Dark/Light Mode**: Adaptive theming for any environment\n- **📱 Cross-Platform**: Works seamlessly on iOS, Android, and Web\n\n## 🚀 Quick Start\n\n### Prerequisites\n\n- Node.js 18+ \n- npm or yarn\n- Expo CLI (`npm install -g @expo/cli`)\n\n### Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/yourusername/focusnest.git\ncd focusnest\n\n# Install dependencies\nnpm install\n\n# Start the development server\nnpm run dev\n```\n\n### Platform-Specific Setup\n\n```bash\n# iOS (requires macOS and Xcode)\nnpm run ios\n\n# Android (requires Android Studio)\nnpm run android\n\n# Web\nnpm run web\n```\n\n## 📱 App Structure\n\n### Core Screens\n\n#### 🏠 **Today Screen** (`app/(tabs)/index.tsx`)\n- View and manage today's time blocks\n- Quick actions for creating blocks\n- Real-time progress tracking\n- Swipe gestures for editing/deleting blocks\n\n#### ⚡ **Focus Screen** (`app/(tabs)/focus.tsx`)\n- Start and manage focus sessions\n- View active and upcoming blocks\n- Track completion statistics\n- Seamless transition to Focus Mode\n\n#### 📅 **Weekly Screen** (`app/(tabs)/weekly.tsx`)\n- Weekly overview and analytics\n- Category-based time tracking\n- Progress insights and trends\n- Export and sharing capabilities\n\n#### 💭 **Reflect Screen** (`app/(tabs)/reflect.tsx`)\n- Daily reflection on completed sessions\n- Rating and feedback system\n- Learning insights and patterns\n- Historical reflection viewing\n\n#### ⚙️ **Settings Screen** (`app/(tabs)/settings.tsx`)\n- Theme and appearance customization\n- Category management\n- Data management tools\n- Working hours configuration\n\n### Special Views\n\n#### 🎯 **Focus Mode** (`components/FocusTimer.tsx`)\n- **Completely separate view** - No tab bar interference\n- Immersive full-screen timer experience\n- Motivational quotes and progress tracking\n- Intuitive controls (play/pause/reset/exit)\n\n## 🏗️ Technical Architecture\n\n### Framework \u0026 Tools\n- **React Native 0.79.1** - Cross-platform mobile development\n- **Expo SDK 53** - Development platform and tools\n- **Expo Router 5** - File-based navigation system\n- **TypeScript** - Type-safe development\n- **AsyncStorage** - Local data persistence\n\n### Key Libraries\n- **Lucide React Native** - Beautiful, consistent icons\n- **React Native Gesture Handler** - Native gesture handling\n- **React Native Reanimated** - Smooth animations\n- **React Native Safe Area Context** - Safe area management\n\n### Data Management\n- **Local Storage**: AsyncStorage for offline-first experience\n- **Type-Safe Models**: Comprehensive TypeScript interfaces\n- **Data Persistence**: Automatic saving and loading\n- **Sample Data**: Built-in examples for new users\n\n## 📊 Data Models\n\n### TimeBlock\n```typescript\ninterface TimeBlockData {\n  id: string;\n  title: string;\n  date: string; // YYYY-MM-DD\n  startTime: string; // HH:MM (24-hour)\n  endTime: string; // HH:MM (24-hour)\n  category: string;\n  color: string;\n  tasks: string[];\n  isActive: boolean;\n  isCompleted: boolean;\n  progress?: number;\n}\n```\n\n### Category\n```typescript\ninterface BlockCategory {\n  id: string;\n  name: string;\n  color: string;\n  icon: string;\n}\n```\n\n### Reflection\n```typescript\ninterface DailyReflection {\n  date: string;\n  blockId: string;\n  blockTitle: string;\n  reflection: string;\n  rating: number; // 1-5 stars\n}\n```\n\n## 🎨 Design System\n\n### Color Palette\n- **Primary**: `#FF6B35` (Vibrant Orange)\n- **Secondary**: `#2E8B8B` (Teal)\n- **Accent**: `#8B4F9F` (Purple)\n- **Success**: `#4CAF50` (Green)\n- **Warning**: `#FFB800` (Amber)\n- **Error**: `#FF4444` (Red)\n\n### Typography\n- **Headings**: 700 weight, optimized sizing\n- **Body**: 500-600 weight for readability\n- **Captions**: 400-500 weight, secondary colors\n\n### Spacing System\n- **Base Unit**: 8px\n- **Consistent Gaps**: 8px, 12px, 16px, 20px, 24px, 32px\n- **Safe Areas**: Automatic handling for all devices\n\n## 🔧 Key Features Deep Dive\n\n### 1. Time Block Management\n- **Smart Creation**: Intuitive form with time validation\n- **Task Management**: Up to 5 tasks per block\n- **Category System**: Color-coded organization\n- **Flexible Editing**: In-place editing with swipe gestures\n\n### 2. Focus Mode Experience\n- **Immersive Design**: Full-screen, distraction-free interface\n- **Smart Controls**: Context-aware play/pause/reset/exit\n- **Progress Tracking**: Visual progress bar and completion percentage\n- **Motivational Elements**: Rotating inspirational quotes\n\n### 3. Analytics \u0026 Insights\n- **Daily Stats**: Completion rates and focus time\n- **Weekly Trends**: Category breakdown and patterns\n- **Visual Progress**: Charts and progress indicators\n- **Export Options**: Share summaries and achievements\n\n### 4. Reflection System\n- **Structured Reflection**: Guided prompts for meaningful insights\n- **Rating System**: 5-star rating for session quality\n- **Historical View**: Track learning and improvement over time\n- **Pattern Recognition**: Identify what works best\n\n## 🛠️ Development\n\n### Project Structure\n```\nfocusnest/\n├── app/                    # Expo Router pages\n│   ├── (tabs)/            # Tab-based navigation\n│   │   ├── index.tsx      # Today screen\n│   │   ├── focus.tsx      # Focus management\n│   │   ├── weekly.tsx     # Weekly analytics\n│   │   ├── reflect.tsx    # Daily reflection\n│   │   ├── settings.tsx   # App settings\n│   │   └── create-block.tsx # Block creation\n│   └── _layout.tsx        # Root layout\n├── components/            # Reusable components\n│   ├── TimeBlock.tsx      # Time block component\n│   ├── FocusTimer.tsx     # Focus mode timer\n│   ├── MobileHeader.tsx   # Header component\n│   └── ClockTimePicker.tsx # Time picker\n├── contexts/              # React contexts\n│   └── ThemeContext.tsx   # Theme management\n├── utils/                 # Utility functions\n│   └── storage.ts         # Data persistence\n└── hooks/                 # Custom hooks\n    └── useFrameworkReady.ts\n```\n\n### Code Quality\n- **TypeScript**: 100% type coverage\n- **ESLint**: Consistent code style\n- **Prettier**: Automatic formatting\n- **Component Architecture**: Modular, reusable components\n\n### Performance Optimizations\n- **Lazy Loading**: Efficient component loading\n- **Gesture Optimization**: Native gesture handling\n- **Memory Management**: Proper cleanup and disposal\n- **Animation Performance**: Hardware-accelerated animations\n\n## 📱 Platform Support\n\n### iOS\n- ✅ Native navigation feel\n- ✅ Safe area handling\n- ✅ Haptic feedback (when available)\n- ✅ iOS-specific design patterns\n\n### Android\n- ✅ Material Design elements\n- ✅ Android navigation patterns\n- ✅ Status bar management\n- ✅ Back button handling\n\n### Web\n- ✅ Responsive design\n- ✅ Keyboard navigation\n- ✅ Mouse/touch interactions\n- ✅ Progressive Web App ready\n\n## 🔒 Data \u0026 Privacy\n\n### Local-First Architecture\n- **Offline Capability**: Full functionality without internet\n- **Data Ownership**: All data stored locally on device\n- **No Tracking**: Zero analytics or user tracking\n- **Privacy Focused**: No data collection or sharing\n\n### Data Management\n- **Automatic Backup**: Local storage with AsyncStorage\n- **Export Options**: JSON export for data portability\n- **Reset Functionality**: Complete data wipe when needed\n- **Sample Data**: Optional sample data for new users\n\n## 🚀 Deployment\n\n### Development Build\n```bash\n# Create development build\nnpx expo install --fix\nnpx expo run:ios\nnpx expo run:android\n```\n\n### Production Build\n```bash\n# Build for production\nnpm run build:web\nnpx expo build:ios\nnpx expo build:android\n```\n\n### Web Deployment\n```bash\n# Build and deploy web version\nnpm run build:web\n# Deploy to your preferred hosting service\n```\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n### Development Setup\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests if applicable\n5. Submit a pull request\n\n### Code Style\n- Follow TypeScript best practices\n- Use meaningful component and variable names\n- Add comments for complex logic\n- Maintain consistent formatting\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- **Expo Team** - Amazing development platform\n- **React Native Community** - Excellent libraries and tools\n- **Lucide Icons** - Beautiful, consistent iconography\n- **Pexels** - High-quality stock photography\n\n## 📞 Support\n\n- **Documentation**: [docs/](docs/)\n- **Issues**: [GitHub Issues](https://github.com/yourusername/focusnest/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/yourusername/focusnest/discussions)\n\n---\n\n**Built with ❤️ by the FocusNest Team**\n\n*Master your day, one focused block at a time.* 🎯","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdewmal%2Ffocusnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdewmal%2Ffocusnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdewmal%2Ffocusnet/lists"}