Thanks to visit codestin.com
Credit goes to github.com

Skip to content

peter-kal/focuzd

Repository files navigation

focuzd

Dark Mode

main page

Light Mode

main page

Break

Get it from the Snap Store

A new pomodoro app, built with Flutter, the goal is to make a feature-equivalent to Pomotroid. Pomotroid uses electron, which makes it pretty heavy, slow to start, and resource intensive. Flutter will solve these issues while also looking nice, and later more features as well as more platforms will be added.

Pomotroid / Focuzd comparison

  1. CPU Usage: Due to Flutter apps being natively compiled in machine code, the performance of Focuzd far exceeds that of Pomotroid, which is based on Electron, so every time you use it, it's like opening a chromium tab. Testing on my device, with the countdown on, the CPU Usage was the following:
  • Focuzd: 0.43%

  • Pomotroid: 9.59%

    Comparison on System Monitor

  1. Download Size (Snap Store Data):
  • Focuzd: 12.53 MB

  • Pomotroid: 67.08 MB

  1. architecture availability
  • focuzd : arm64, amd64
  • pomotroid: amd64 only
  1. Update Status: Pomotroid hasn't seen any update since 9 February of 2021

for release 2.0(still thinking)

  • Release 2.0 ( changing 1.9 release to 2.0 with extra feature )

    • Should take a large break every 4 sessions not after the last work session

    • add statistics and history base support

    • thus clean and improve the db

    • make the db file app specific, better breaking db compatibility now than later, maybe think of a migration strategy

    • create the history page, following the round-centric model

    • Handle the DB in unexpected shutdown

      • Enabled for closing the window from YaruWindowTitleBars on some examples
      • Make it Universal
    • Have the ability to remove the last break of the round.

    • Round finish time displayed in main page not updating

    • Pause State is not being emitted, and times ain't updated.

    • Add Subject/topic support

      • Each Subject should have sub-subjects, and super-subjects, ex: School -> Sciences -> Mathematics -> Algrebra & Geometry etc.
      • The working subject should be visible on the main page
      • Subject should be optional, and the UI shouldn't be invasive
      • Make a create page for subjects.
      • Make a subject page
        • Have the ability to re-link/link with other subject.
        • List all the sub-subjects.
        • See history from sessions.
    • Together with Subjects, Goals should be implemented.

      • Types of goals:
        • Type1: Static goal of x sessions for a y period of time.
        • Type2: Dialectic goal of x sessions for y against x' sessions of r past period of time.
        • Type3: Static goal of x sessions with z subject per y
        • Type4: Relational static goal of x with z per x' with f, on same y
        • Type5: Dialectic goal of x with zon y for x' with z, on r.
      • Goal Creation Page
        • Implement all types
        • Integrate with Contradiction Detection Mechanism
      • Handle contradictions that might occur. One goal should not condition the under-completion of another goal.(CDM)
      • Ability to delete a goal
      • Create Goal Groups
        • Create the SQL tables(Group and GroupLink)
        • Implement it in the code.
      • Send notifications when a goal is completed

    (more to come)

    • migrate snap to core24

Switched for 2.x releases or 3.0

  • Statistics page
    • See total work(focus break) time
    • See charts for week / month / year
    • See about each topic *, and quality view in general(all subjects)

Release 3.0

  • Add mobile support
  • Add ability for two or more focuzds DBs to synchronise(added UUID to IDs from 2.0).

About

A pomodoro app built with flutter, and Yaru widgets.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published