The ultimate goal of monkmode is to help you achieve a monk-like state of focus, allowing you to maximize deep work. It does this by breaking your overall focus goal into structured focus sessions, short breaks, and long breaks. This approach is a well-known technique used by high achievers and students alike. By working in focused bursts, you can maintain higher levels of concentration, which in turn helps you accomplish more.
- Go to Releases
- Download the latest
monkmode.exe - Double-click to run - no installation required!
Windows Defender may show a warning when downloading or running the executable. This is normal for unsigned applications. To run the app:
- When downloading: Click "Keep" if browser shows a warning
- When running: Click "More info" → "Run anyway" if Windows Defender blocks it
- Alternative: Right-click the .exe → Properties → Check "Unblock" → Apply
This happens because the executable isn't code-signed. The app is safe to use - you can verify by checking the source code in this repository.
# Clone the repository
git clone https://github.com/yourusername/monkmode.git
cd monkmode
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.py# Follow steps above, then:
pip install pyinstaller
# Linux build command
pyinstaller --onefile --windowed \
--name monkmode \
--icon=logo/monkmode.png \
--add-data "database/schema.sql:database" \
--add-data "logo/monkmode.png:logo" \
--add-data "monkmode_sounds/break_start.wav:monkmode_sounds" \
--add-data "monkmode_sounds/focus_start.wav:monkmode_sounds" \
main.py
# Find executable in dist/ folder# Clone the repository
git clone https://github.com/yourusername/monkmode.git
cd monkmode
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.py# Follow steps above, then:
pip install pyinstaller
# macOS build command
pyinstaller --onefile --windowed \
--name monkmode \
--icon=logo/monkmode.png \
--add-data "database/schema.sql:database" \
--add-data "logo/monkmode.png:logo" \
--add-data "monkmode_sounds/break_start.wav:monkmode_sounds" \
--add-data "monkmode_sounds/focus_start.wav:monkmode_sounds" \
main.py
# Find executable in dist/ folder- Windows: No requirements - executable includes everything
- Linux/macOS: Python 3.8+ and dependencies listed in
requirements.txt
Screenshots in this README were taken on Windows. The app may look slightly different on Linux/macOS (different icons, progress bar styling, some UI behaviors) but all functionality remains the same.
Focus periods are the core of deep work. When you first run monkmode, the default focus period is called "pomodoro", one of the most popular focus techniques: it divides work into 25-minute focus sessions followed by 5-minute breaks. After completing four focus sessions, the next break is a long break, usually around 15 minutes.
With monkmode, you can create custom focus periods however you like.
You can edit any previously created focus period, including the default "pomodoro". When you press Edit, the currently selected focus period will be modified according to your changes.
You can delete any focus period except the default one. Be careful — this action cannot be undone.
Focus subjects are the topics you will be concentrating on during your focus sessions.
Note: The interface for adding, editing, deleting focus subjects works the same as for focus periods (see screenshots above).
When creating a new focus subject, you can be as detailed as you like. The only required parameter is the name of the topic you want to focus on.
To edit a focus subject, first select it from the combobox. When you press Edit, the currently selected focus subject — including the default subject if chosen — will be modified according to your changes.
Archiving is useful for topics you’ve finished (for example, a task, a completed university class or a side project). Archiving sets the subject aside without deleting it, so it still appears in your statistics menu.
Note: The default focus subject cannot be archived.
You can delete any focus subject except the default one. Be careful — this action cannot be undone, and any progress linked to that subject will be lost.
Starting a focus session is simple.
First, select the focus period you want to use and the subject you’ll focus on.
Next, press “Focus” and choose the number of focus sessions you want to complete.
You’ll see the total duration of your focus time along with a breakdown of the sessions.
Finally, press “start focus” to begin the timer.
Each time a focus session or a break begins, you’ll hear a distinct sound signaling the start of that session. A small pop-up text in the bottom-right corner will also appear to let you know whether a focus or break session is starting. Both the sound and pop-up notifications can be turned off in the settings menu.
While you’re in focus, you can always pause or stop the timer:
-
Pause freezes the countdown until you press Resume.
-
Stop ends the focus session entirely (after confirmation). Don’t worry — any progress you’ve already made will still be saved.
In the top-right corner, you’ll find an icon that opens a small view of monkmode. This view allows you to track your progress while working on other tasks. The pause, resume, and stop functions work exactly as described above.
You can always switch back to the fullscreen view at any time. If you find the countdown distracting, you can click on the timer to conceal the remaining time.
Your daily focus goal is the amount of time you want to spend in focused work each day. The minimum goal is 1 hour. You can adjust your daily focus goal in the settings menu. By completing your daily goal, you’ll earn streaks — a familiar concept for many productivity apps.
The action bar is located in the top-left corner of the app and provides quick access to key options.
In the settings menu, you can:
- Change default values
- Choose to show or hide the daily quote
- Turn focus notifications on or off
Note: Changing your daily focus goal after completing it will not affect that day’s completion status.
The default focus period and subject are automatically selected when you launch the app.
The archive is where all of your archived subjects are stored. From here, you can also unarchive them at any time.
The help menu contains two options:- About → provides basic information about the app, the developer, credits, and the license used.
- How to Use → links directly to this README.md file (the guide you’re reading now).
On the main page, you can see your current week’s focus time and your current streak. Press “Show All” to access more detailed statistics.
These statistics give you a clear overview of your progress.
Note: Focus sessions completed only count if you finish the entire session (sessions you stop early do not count).
- Daily goal achieved — shows how many times you’ve completed your daily focus goal.
-
Current streak — shows your ongoing streak.
- Weekdays: streaks are strict — if you miss your daily goal on a weekday, your streak resets to 0.
- Weekends: optional — if you complete your daily goal, your streak increases; if you don’t, your streak will not reset.
- Longest streak — your all-time longest streak.
-
Karma — a metric showing your consistency over the past 3 months.
Formula:
karma = (completed_days / relevant_days) * 100completed_days = number of days you completed your daily goal.
relevant_days = all weekdays in the past 3 months + weekend days where you completed your daily goal. - Karma levels — reflect your “monk status” in your focus journey. There are 7 levels to discover.
After completing at least one focus session, 5 charts will appear in the statistics window:
- Line chart — shows your daily focus time over the last 30 days.
- Pie chart — shows how your focus is distributed across subjects in the last 30 days.
- Pie chart — shows how your focus is distributed across period settings in the last 30 days.
- Bar chart — shows the focus time per subject in the last 30 days.
- Bar chart — same as the previous one, but for all history (archived subjects can be shown or hidden).
The app automatically adapts to your operating system's theme (dark/light mode). Restart the app after changing your OS theme for the best experience.
With this, we’ve covered all the important features. If you have any questions, feel free to ask them in the GitHub repository.
Happy focusing! – dop14