DEV Community

Cover image for Meet NEXI: A Windows Focus Companion Built with Python and AdaL
abdullah haroon
abdullah haroon

Posted on

Meet NEXI: A Windows Focus Companion Built with Python and AdaL

What if your computer could help you understand where your time goes and gently remind you when it's time to get back on track?

That's the idea behind NEXI: Your Focus Companion, a Windows desktop productivity app I've been building with Python, PySide6, and AdaL.

NEXI combines activity tracking, focus sessions, intention-based work, visual analytics, and a small floating companion into one desktop application. The goal isn't to control every minute of your day. It's to make your digital habits easier to understand and help you work with more intention.

Why I built NEXI

We spend hours switching between code editors, browsers, chats, and other applications. Sometimes that time is productive. Sometimes we open a browser to look up one thing and end up somewhere completely different. I wanted a desktop tool that could help answer a few simple questions:

  • Where did my computer time actually go?
  • Which applications and websites occupied most of it?
  • When am I most active?
  • Can I set a clear intention before starting a focus session?
  • Can productivity tools feel useful without looking boring or intrusive?

That became the starting point for NEXI.

1. Focus Center: One place to start a session

The Focus Center is the main dashboard. It brings the current focus session, timer, active foreground application, and daily activity summaries together.

The dashboard includes:

  • Focus sessions with a circular countdown.
  • Focus modes such as Deep Work and Custom.
  • Intent Mode for setting a task and time budget.
  • Screen time, productive time, distractions, and daily goal metrics.
  • Most-used applications and tracked website summaries.

I wanted the main screen to answer one question quickly: What is happening on my computer right now?

2. Intent Mode: Work with a purpose

One of NEXI's key ideas is Intent Mode.

Before starting a session, you can define a task, choose a time budget, and optionally specify a target platform.

For example:

  • Study compiler design for 45 minutes.
  • Find a solution to an authentication bug.
  • Watch a programming tutorial without losing track of time.

The idea is simple: instead of opening an application without a plan, start with a specific reason for being there.

Intent Mode is designed to support accountability through a defined objective and countdown. Its behavior depends on the features and integrations enabled in the current build.

3. Focus Radar: Turn activity into something understandable

Raw activity logs aren't very helpful if you can't see the patterns in them.

Focus Radar presents tracked activity through visual summaries, hourly bars, time-period filters, and application and website breakdowns.

The dashboard is designed to help answer questions such as:

  • How much active time did I record today?
  • Which application did I use most?
  • When was my activity highest?
  • Which websites accounted for tracked distraction time?

The emphasis is on visual clarity. Bars and ranked lists make it easier to spot patterns than reading a long list of timestamps.

4. Understand which applications consume your time

NEXI can track the foreground application and present application usage alongside website activity where supported.

The purpose isn't to judge every application as good or bad. A browser can be essential for research, just as an editor can be essential for coding. Context matters. The useful part is being able to see where time accumulated and use that information to make better decisions.

5. A settings page that gives users control

Productivity tools need to adapt to the person using them.

NEXI's Settings page brings appearance preferences, attention controls, timers, website limits, and monitoring options into one place.

The appearance controls include a dark theme, OLED-style black, Midnight Orange, a light theme, and custom color values.

The app also has a break experience with a breathing prompt and controls to resume focus or extend the break. Other attention and website-control options depend on the current implementation and configuration.

6. A small companion, not another noisy notification

I also wanted NEXI to have a recognizable personality.

The floating companion is designed to sit alongside the desktop workflow rather than demand constant attention. It gives the app a visual identity beyond another timer and collection of charts. The design direction is deliberately focused: dark surfaces, orange highlights, clear typography, and compact cards.

7. Built with Python, PySide6, and AdaL

NEXI is a Windows desktop application built with Python and PySide6 (Qt) using AdaL.

The project brings together several pieces:

  • PySide6: desktop interface and interactive components.
  • Windows APIs: foreground application detection and idle-time awareness.
  • SQLite: local activity and settings storage.
  • Chromium browser integration: optional support for more accurate website attribution.
  • Groq API: optional AI habit insights, when configured.

I used AdaL as a coding assistant throughout development. It helped me work through implementation tasks and iterate on the application, while the project itself remains a software system that needs practical verification and refinement.

The architecture aims to keep everyday activity tracking local. Optional AI insights are a separate capability and should be enabled only when the user wants to use them.

8. Privacy and user control

Activity tracking is personal, so privacy needs to be part of the design rather than an afterthought.

NEXI is designed around local storage for activity records. Its optional browser integration communicates with a local service, and the optional AI coach is intended to use high-level summaries rather than raw browsing history.

Users should still review the settings and privacy documentation for the exact behavior of the release they install, especially before enabling optional integrations.

What's next?

There is always more to improve in a desktop productivity app. My next priorities are making the experience more polished, keeping the dashboard responsive, improving empty states and activity summaries, and ensuring that focus and attention controls behave consistently. I also want the project to be straightforward for other developers to explore, build, and contribute to.

Try NEXI

NEXI is built for people who want a clearer picture of their computer habits and a more intentional way to approach focus sessions.

If you're interested in desktop productivity tools, Python GUI applications, or building software with AI coding assistants, I'd love to hear your thoughts.

What feature would make a focus companion genuinely useful in your daily workflow?


Built with Python, PySide6, and AdaL.

Top comments (4)

Collapse
 
hammad_khan_244f98f273734 profile image
hammad khan •

Oh great lemme download............ Hey I never Heard of AdaL, can you tell me more about this one

Collapse
 
abdullah_haroon_092cf10d3 profile image
abdullah haroon •

Hi Hammad thanks, please give feedback or if you face any problem or any updates you want, do create issue on Github
here you can get more info of AdaL : blog.sylph.ai/posts/coding-agent-a...

regards :)

Collapse
 
muhammad_ahmad_0a61e5091c profile image
Muhammad Ahmad •

😍

Collapse
 
robertpaschal profile image
Odinaka Robert Nnamani •

python and ada in one focus app is not a pairing you see every day.