{"id":50312799,"url":"https://github.com/sudoeren/fochus","last_synced_at":"2026-05-28T22:02:20.365Z","repository":{"id":331222012,"uuid":"1024883203","full_name":"sudoeren/fochus","owner":"sudoeren","description":"Manage Your Productivity and Focus Time","archived":false,"fork":false,"pushed_at":"2026-05-27T09:21:32.000Z","size":43734,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-27T11:19:53.851Z","etag":null,"topics":["docker-compose","docker-image","life","lucide-react","nextjs","note","note-taking","notes","pomodoro","pomodoro-timer","prisma-orm","react","shadcn-ui","tailwind","tailwindcss","todo","todoapp","todolist","typescript","vite"],"latest_commit_sha":null,"homepage":"https://fochus.pages.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sudoeren.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-07-23T11:46:30.000Z","updated_at":"2026-05-27T09:21:00.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/sudoeren/fochus","commit_stats":null,"previous_names":["sudoeren/fochus"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/sudoeren/fochus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoeren%2Ffochus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoeren%2Ffochus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoeren%2Ffochus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoeren%2Ffochus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sudoeren","download_url":"https://codeload.github.com/sudoeren/fochus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoeren%2Ffochus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33627948,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["docker-compose","docker-image","life","lucide-react","nextjs","note","note-taking","notes","pomodoro","pomodoro-timer","prisma-orm","react","shadcn-ui","tailwind","tailwindcss","todo","todoapp","todolist","typescript","vite"],"created_at":"2026-05-28T22:02:13.926Z","updated_at":"2026-05-28T22:02:20.352Z","avatar_url":"https://github.com/sudoeren.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"public/logo.svg\" alt=\"Fochus Logo\" width=\"120\"\u003e\n  \u003ch1\u003eFochus\u003c/h1\u003e\n  \u003cp\u003eManage Your Productivity and Focus Time\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eFochus\u003c/strong\u003e is a modern, all-in-one personal productivity suite designed to help you stay organized and focused. It combines task management, note-taking, and a Pomodoro timer into a single, sleek, and intuitive interface.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eDeveloper:\u003c/strong\u003e Eren Çakar\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[Features](#features) •\n[Installation](#installation) •\n[FAQ](#faq) •\n[License](#license)\n\n\u003c/div\u003e\n\n---\n\n## App Preview\n\nFochus comes with an eye-friendly dark mode and a spacious light mode. You can use the system theme or select manually according to your preference.\n\n### Light and Dark Mode\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"screenshot_dark.png\" alt=\"Fochus Dark Mode\" width=\"100%\" style=\"border-radius: 10px; margin-bottom: 20px;\"\u003e\n  \u003cbr\u003e\n  \u003cem\u003eStylish and focus-enhancing Dark Mode\u003c/em\u003e\n  \u003cbr\u003e\u003cbr\u003e\n  \u003cimg src=\"screenshot_light.png\" alt=\"Fochus Light Mode\" width=\"100%\" style=\"border-radius: 10px;\"\u003e\n  \u003cbr\u003e\n  \u003cem\u003eClean and spacious Light Mode\u003c/em\u003e\n\u003c/div\u003e\n\n---\n\n## One-Line Install (Linux)\n\nAny Linux machine with Docker — one command, zero configuration:\n\n```bash\ncurl -sSL https://github.com/sudoeren/fochus/raw/main/install.sh | bash\n```\n\nOr if you prefer to review first:\n\n```bash\ngit clone https://github.com/sudoeren/fochus.git\ncd fochus\nbash install.sh\n```\n\nThe script will:\n- Clone the repository\n- Build a single Docker image (backend + frontend + SQLite)\n- Start the container with auto-restart\n- Open port `3000` in the firewall (if using `ufw`)\n- Show your local and network access URLs\n\n\u003e **External access:** The app binds to `0.0.0.0:3000`. Access from anywhere on your network via `http://\u003cserver-ip\u003e:3000`. For internet access, set up a reverse proxy (nginx, Caddy) or a tunnel (ngrok, Cloudflare Tunnel).\n\n### Uninstall\n\n```bash\nbash \u003c(curl -sSL https://github.com/sudoeren/fochus/raw/main/uninstall.sh)\n```\n\nOr from a local clone:\n\n```bash\nbash uninstall.sh\n```\n\nThis stops the container, removes it, deletes the data volume and Docker image.\n\n---\n\n### Other Setup Methods\n\n#### Node.js (Direct, No Docker)\n\n```bash\ngit clone https://github.com/sudoeren/fochus.git\ncd fochus\nnpm run setup    # installs deps, creates SQLite DB, generates Prisma\nnpm start        # runs backend + frontend simultaneously\n```\n\nOpen **http://localhost:5173**.\n\n#### Docker Compose\n\n```bash\ngit clone https://github.com/sudoeren/fochus.git\ncd fochus\ndocker-compose up -d --build\n```\n\nOpen **http://localhost:3000**.\n\n#### Development\n\n```bash\n# Terminal 1: Backend\ncd backend\ncp .env.example .env\nnpm install\nnpx prisma db push\nnpm run dev      # http://localhost:3001\n\n# Terminal 2: Frontend\nnpm install\nnpm run dev      # http://localhost:5173\n```\n\n---\n\n## Spotlight: Everything at Your Fingertips\n\nDon't get lost in the app! Access your notes, tasks, and settings in seconds with the **Spotlight** feature (`/` key).\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"spotlight.png\" alt=\"Spotlight Search Feature\" width=\"80%\" style=\"border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,0.5);\"\u003e\n\u003c/div\u003e\n\n---\n\n## Features\n\nFochus is developed with user experience and efficiency in mind.\n\n### Smart Notes\n\n- **Rich Text Editor:** Format and detail your notes.\n- **Pinning \u0026 Organization:** Keep important notes at the top.\n- **Trash System:** Safely restore deleted notes or delete them permanently.\n- **Task Integration:** Link your notes directly with your tasks.\n\n### Advanced Task Management\n\n- **Custom Lists:** Separate tasks into project-based lists and use color codes.\n- **Recurring Tasks:** Create daily, weekly, or monthly routines.\n- **Drag \u0026 Drop:** Easily sort tasks with `@hello-pangea/dnd`.\n- **Subtasks:** Break down complex jobs into manageable small parts.\n- **Smart Statuses:** Track Pending, Completed, or Deferred jobs.\n\n### Integrated Pomodoro Timer\n\n- **Focus Modes:** Built-in timer for Work, Short Break, and Long Break.\n- **Session Tracking:** Automatically save sessions to track your productivity history.\n- **Distraction-Free Interface:** Simplified view to help you stay in the flow.\n\n---\n\n## FAQ\n\n**Q: What are the main keyboard shortcuts?**  \nA: You can open the **Spotlight** with the `/` key to quickly access all features and search your data.\n\n**Q: Where is my data stored?**  \nA: With the self-hosted Docker setup, data is stored in a SQLite database inside the `fochus_data` Docker volume. You can back up and restore via the Settings page.\n\n**Q: Can I customize the Pomodoro timer?**  \nA: Yes! You can customize work, short break, and long break durations, enable auto-start for breaks or work sessions, and set the long break interval — all from the settings panel inside the timer.\n\n**Q: Is there a mobile version?**  \nA: Fochus is intentionally desktop-first. A dedicated mobile experience is not planned for now.\n\n**Q: How do I run tests?**  \nA: Run `npm test` in the root for frontend tests or `cd backend \u0026\u0026 npm test` for backend tests. Both use Vitest.\n\n---\n\n## License\n\nDistributed under the MIT License. See `LICENSE` file for more information.\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003eDeveloped by \u003cstrong\u003eEren Çakar\u003c/strong\u003e\u003c/p\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudoeren%2Ffochus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsudoeren%2Ffochus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudoeren%2Ffochus/lists"}