Git Product home page Git Product logo

mad-productivity's Introduction

splash

Write notes, time track your tasks, keep track of tasks!

Mad Productivity is a dead simple productivity app made in the Godot Engine. It lets the user take notes, time track item, use the pomodoro timer and organize their tasks under projects.

Version 0.0.2 - 2021/11/11

Changelog

Getting started

Pull this repo to a folder and open the project in Godot. Afterwards you can start testing, using and developing it right away. The project runs on Godot 3.4

Shortcuts

  • ALT + W - move a view higher
  • ALT + S - move a view lower
  • ALT + T - toggle the time tracking panel
  • ALT + E - trigger the context aware button at the top panel (usually NEW)
  • ALR + F - focus context aware text input at the top panel

๐Ÿ“ƒ Credits

Made by Mad Cookies Studio.

Contributors: Krystof Klestil, Vajk Pomichal, Martin Piliar

Support us

Buy the app on itch.io Mad Productivity itch.io

MIT License

mad-productivity's People

Contributors

fenix-hub avatar funnoober avatar lentsius-bark avatar martin-piliar avatar pomichal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mad-productivity's Issues

Deleting a project doesn't reset the right hand side so you can still create New Tasks which results in an error

Repro Steps:

  • Click Tasks
  • Click New (so new project created)
  • Click New Project (so task list shown at right)
  • Click Delete button (X) next to project
  • Click New Task button at right

Expected:

  • Page at right should prolly be hidden once project is deleted.

Actual:

  • Page remains interactable and leaves user in wonky state where unhandled errors occur

Error:
Error: Attempt to call function 'set_percent_done' in base 'null instance' on a null instance.

File:
ToDo.gd

Line:

 update_percent_done(p_id : int, child_p_id : int) -> void:
$VBoxContainer/HSplitContainer/PanelL/ScrollContainer/ProjectButtons.get_child(child_p_id).set_percent_done(res.get_percent_done(p_id))

Mad Productivity 0.0.2 crashes on startup on Pop!_OS with Nvidia card

The previous version of MadProductivity worked fairly well on my system. I downloaded the latest and it is crashing on startup.
I'm running on Pop!_OS 21.04 with (I think) all the latest updates installed. I unzipped the file in my Downloads/ folder, changed the file to executable, ran it and it crashed. I started on the command line and got the following error:

./MadProductivity.x86_64
Godot Engine v3.4.stable.official.206ba70f4 - https://godotengine.org
OpenGL ES 2.0 Renderer: NVIDIA GeForce RTX 2060/PCIe/SSE2
OpenGL ES Batching: ON

WARNING: Debanding is not supported in the GLES2 backend. To use debanding, switch to the GLES3 backend and make sure HDR is enabled.
at: render_target_set_use_debanding (drivers/gles2/rasterizer_storage_gles2.cpp:5643)
directory exists!
directory exists!
directory exists!
Resource exists!
Resource exists!
Resource exists!
Segmentation fault (core dumped)

Can there be an option to add images to the note section?

Some times i like to leave images or photos as a reference to what i am referring to in these notes, which is what i tried to do on Mad Productivity but couldn't find any option to do so.
Is there by any chance a plan on adding that feature to the notes section? I'm currently using your software for development and have to some times use ALT+Tab to see the images in a sepparate window and thought it would be easier and more productive to have them in one place.

By the way, i don't really know if this is where i should be posting this.

Time and Date formats

Would be nice to support dd.mm.yyyy, mm/dd/yyyy and yyyy-mm-dd, also for time stamps 24h format as well as am/pm format.

Allow pomodoro to be used without a task name.

We've received feedback that people also use the pomodoro technique as simple means of knowing when to work and when to take a break without tracking their time. This could be easily implemented as a checkbox in the time tracking panel or something along those lines.
Quickly improving its usability.

Can't stop the time tracker once it's started

Fedora34/KDE

Starting a time tracker grays out Pause/Finish/Cancel buttons, and wont allow for any change. Can still edit the task title.
Restarting the app doesn't fix the issue, and the timer is still running.

Normal Timer Countdown

It would be great to have not just a pomodoro timer, but also a normal timer countdown. Thank you.

itch.io publishing improvements

  1. Currently the version of the app is only shown on the itch.io download page.
    Could also show the version
    • in app (about or settings page)
    • in the binary name
  2. It seems the github repo is already on version 0.0.3, but itch.io is not updated. Implementing a CI workflow like Github Actions could help with streamlining the publishing process.

BUGS and papercuts

  • When you delete a note, the text doesn't disappear
  • Deleted notes come back after restarting the app
  • You can select text in both the title and the text.
  • #14
  • Sometimes can't delete new quotes
  • Saving quotes will sometimes crash the app
  • #15
  • The window is bound to one screen when in borderless mouse

Custom window controls make the app unusable on Fedora 34/KDE

This may extend to other systems/WMs.

There are a couple of issues I couldn't solve until I found a toggle for "Borderless window":

  • Window 'jumps around' when dragged by the custom top bar, like it's fighting to stay in one place. (edit: may be fixed by #12)
  • Maximize button works one way, clicking it again doesn't resize window back to it's original size.
  • Using the bottom right resize control seizes the window out of view AND captures the mouse cursor. Alt+tab helps for the first issue, then clicking on the top bar once releases the mouse.
  • Window is stuck to the original monitor in a multi-monitor setup (although I've seen it tracked in #11 already).

Related: #22

Obvious problems aside, it's a fairly bad first impression. I can help test again on KDE.

Mad Productivity randomly stopped starting

I've been using Mad Productivity almost daily for the past week or so, and two days ago, I click to start and the logo appears and a console flashes, but app crashes. Windows shows the useless "oh we are finding problems" message box. I don't know if the itch.io app auto-updated it.

So the logs say different things as I was testing out what was causing the error.

When I moved all of the files out of "AppData\Roaming\Godot\app_userdata\MadProductivity" the app worked fine. Then I replaced the newly created files with my actual files, and it had errors and crashed. It seems to be ANY tres resource that exists causes issues.

Logs:
godot.log
godot_2022-03-04_07.44.38.log
godot_2022-03-04_07.44.49.log
godot_2022-03-04_07.45.02.log
godot_2022-03-04_07.45.09.log

Edit: I have it running, but with some conditions:

  1. deleted all app data
  2. started mad productivity (then exit)
  3. copied back the data, except for "settings.tres" and "theme.tres"
  4. it starts fine now, except when I access the Time Tracking - something in that file makes it sad
  5. I can't copy back either "settings.tres" or "theme.tres" because they also make it sad

Allow turning off Particles to save GPU Usage

Low Processor Mode is On, however the particles force the screen to constantly update. On laptops this is an issue because GPU usage is always up high. When the particles are hidden the GPU usage drops.
I want to use this app however battery life on my laptop matters when I am away from a plug, and I want the usage to be as low as possible.
Other optimizations could be made by caching node paths (dont use $NodeName), cache it into a variable onready and use that instead. (I have heard get_node is an expensive call, it may help to reduce those. as well, but I don't think it is a big deal.)

Undo Functionality

Need at least Undo Functionality with Deleting of Notes / Tasks, or confirmation dialog that you really want to delete something. Accidently removed something that I didn't want to remove.

Tab to Body

When Creating / Editing a Note, in the Title field of the note, when pressing Tab, should move the cursor to the body of the note.

Cache node paths instead of using '$' where applicable

As originally proposed by WraithWinterly in #18 , the app could be made more performant by caching the $NodeName calls in on ready variables.

At the moment the $ function is called all over the app so it's necessary to go through the entirety of it, and apply where necessary.

SUGGESTION - Mobile app + sync

It would be nice to have a mobile version of this app with some form of sync functionality. As you mentioned that it is made using Godot, you can export the app for Android using it. I don't know if you'd have to rescale the app for phone screens as I dont use Godot, but it's worth a shot.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.