Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

524 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fochus Logo

Fochus
Manage Your Productivity and Focus Time


Fochus 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.


Features

Feature Description
Smart Notes Rich text editor with HTML formatting, pinning for quick access, trash system for safe deletion, and direct task linking.
Task Management Custom lists with color coding, recurring tasks, drag-and-drop sorting, subtasks, and status tracking.
Pomodoro Timer Built-in work, short break, and long break modes with automatic session tracking and productivity history.
Spotlight Search Press / to instantly search notes, tasks, and navigate the app without leaving the keyboard.
Dark Mode System-aware theme with an eye-friendly dark mode and a clean light mode. Toggle manually or follow system preferences.
Docker Ready Single-command deployment with embedded SQLite. No external database required.

App Preview

Fochus Light Mode
Clean and spacious Light Mode

Fochus Dark Mode
Stylish and focus-enhancing Dark Mode

Spotlight

Access your notes, tasks, and settings in seconds without lifting your hands from the keyboard. Spotlight is a command palette that lets you search, create, and navigate the entire app with just the / key.

Spotlight Search

Quick Start

Download the portable package for your platform from the latest release and run:

Linux / macOS

curl -L https://github.com/sudoeren/fochus/releases/latest/download/fochus-linux-x64.tar.gz | tar xz
cd fochus-linux-x64
./start.sh

Windows

# Download fochus-win-x64.zip from the latest release and extract
cd fochus-win-x64
.\start.bat

Once started, open http://localhost:5800 in your browser. Data is stored in data/fochus.db next to the package.


Other Ways to Run

Docker Compose

git clone https://github.com/sudoeren/fochus.git
cd fochus
cp .env.example .env
docker-compose up -d --build

Open http://localhost:5800.

Development

# Terminal 1: Backend
cd backend
cp .env.example .env
npm install
npx prisma db push
npm run dev      # http://localhost:3001

# Terminal 2: Frontend
npm install
npm run dev      # http://localhost:5800

Project Structure

fochus/
├── src/              React 19 SPA with Vite, Tailwind 4, TanStack Query
│   ├── components/   Reusable UI components
│   ├── pages/        View pages (Dashboard, Notes, Tasks, Settings, etc.)
│   ├── hooks/        Custom hooks (useTasks, useNotes, usePomodoro, etc.)
│   ├── services/     API client and external service integrations
│   ├── locales/      i18n translations (Turkish, English)
│   └── lib/          Utility functions
├── backend/          Express 5 REST API
│   ├── src/
│   │   ├── routes/   API route handlers
│   │   ├── middleware/  Auth, admin, error handler
│   │   └── lib/      Prisma client
│   └── prisma/       SQLite schema and migrations
├── public/           Static assets and service worker
├── docker-compose.yml  Full-stack deployment
├── Dockerfile        Single image (backend + frontend)
└── install.sh        One-line setup script

Uninstall

Delete everything with a single command.

Portable — Inside the fochus folder, run:

./uninstall.sh      # Linux / macOS
.\uninstall.bat     # Windows

This removes your data and the entire folder.

Docker Compose — Inside your repo clone, run:

bash uninstall.sh

This stops the container, removes the image, and deletes the data volume.


License

Distributed under the MIT License.


Built with React, Express, Prisma, SQLite — and a lot of focus.