Sessions
Focus with timed work intervals.
Install / Use
/learn @pojntfx/SessionsREADME
Sessions
Focus with timed work intervals.
<br/>Overview
Sessions is a simple visual timer application designed specifically for the pomodoro technique, helping you stay productive by breaking work into focused sessions with regular breaks.
It enables you to:
- Start focused work sessions with customizable timer durations
- Track your progress with a clean, distraction-free interface
- Take regular breaks to maintain productivity
Installation
On Linux, Sessions is available on Flathub:
<a href='https://flathub.org/apps/com.pojtinger.felicitas.Sessions'> <img width='240' alt='Download on Flathub' src='https://flathub.org/api/badge?locale=en'/> </a>For other platforms, see contributing; development builds are also available on GitHub releases.
Tutorial
The pomodoro technique is a time management method that uses a timer to break work into intervals, traditionally 25 minutes in length, separated by short breaks. Here's how to use Sessions:
- Set your timer: Choose your work session duration (25 minutes is typical)
- Start working: Focus on a single task during the timer
- Take a break: When the timer ends, take a 5-minute break
- Repeat: After 4 sessions, take a longer 15-30 minute break
🚀 That's it! We hope Sessions helps you with your productivity.
Screenshots
Click on an image to see a larger version.
<a display="inline" href="./assets/meta/screenshot-initial.png?raw=true"> <img src="./assets/meta/screenshot-initial.png" width="45%" alt="Setting up a new timer session" title="Setting up a new timer session"> </a> <a display="inline" href="./assets/meta/screenshot-running.png?raw=true"> <img src="./assets/meta/screenshot-running.png" width="45%" alt="Timer running during a work session" title="Timer running during a work session"> </a>Acknowledgements
- Mirabelle Salles contributed the icon.
- puregotk/puregotk provides the GTK4 and
libadwaitabindings for Go.
Contributing
If you are new to contributing to open-source projects or projects in the GNOME ecosystem, the contribution guide for Sessions might be helpful to you.
To contribute, please use the GitHub flow and follow the GNOME Code of Conduct.
To build and start a development version of Sessions locally, run the following:
$ git clone https://github.com/pojntfx/sessions.git
$ cd sessions
$ go generate ./...
$ go run -ldflags="-X 'main.LocaleDir=${PWD}/po' -X 'main.SchemaDir=${PWD}/assets/resources'" .
You can also open the project in GNOME Builder and run it by clicking the play button in the header bar, or use Foundry directly:
$ foundry init
$ foundry run
If you want to reproduce the build from Flathub, you can use flatpak-builder directly:
$ flatpak run --command=flathub-build org.flatpak.Builder --install com.pojtinger.felicitas.Sessions.json
$ flatpak run --command=flatpak-builder-lint org.flatpak.Builder manifest com.pojtinger.felicitas.Sessions.json
$ flatpak run --command=flatpak-builder-lint org.flatpak.Builder repo repo
$ flatpak run com.pojtinger.felicitas.Sessions
To translate Sessions, you can use Weblate. This is the current translation status:
License
Sessions (c) 2026 Felicitas Pojtinger and contributors
SPDX-License-Identifier: AGPL-3.0
