Git Product home page Git Product logo

go-for-it's Introduction

GoForIt!

GoForIt! has been translated into many languages already. If your language is missing or incomplete, please help to translate it at Weblate.

Translation status

Information for End Users

GoForIt! is a simple and stylish productivity app, featuring a to-do list, merged with a timer that keeps your focus on the current task. More information for end users can be found here.

Screenshot

How To

The original author made the following video explaining the workflow of GoForIt!:

GoForIt! Promotion Video

This video shows a very old version of GoForIt!, but most of what is shown still applies to the current version.

Storage and Synchronisation

To-do lists are stored in the Todo.txt format. This simplifies synchronization with mobile devices and makes it possible to edit tasks using other Todo.txt front-ends (e.g. the official apps for Android or iOS or the alternative Android client Simpletask). A comprehensive tutorial about setting up GoForIt! with Simpletask can be found here.

Download and Installation

GNU/Linux Packages

elementary OS

Get it on AppCenter

Ubuntu

I maintain a Launchpad PPA which can be used to acquire .deb packages. On Ubuntu (+ derivates) it is recommended to add the PPA for automatic updates:

sudo add-apt-repository ppa:go-for-it-team/go-for-it-stable && sudo apt-get update
sudo apt-get install go-for-it

For git versions use https://code.launchpad.net/~go-for-it-team/+archive/ubuntu/go-for-it-daily instead.

Arch Linux

Build it with makepkg or use your favorite aur helper.

Flatpak

Flatpak packages support multiple distributions and are sandboxed.

Stable releases are hosted on Flathub:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub de.manuel_kehl.go-for-it

FreeBSD

GoForIt! is avaiable in the FreeBSD Ports Collection:

pkg install go-for-it

Windows

Unfortunately, a recent Windows version isn't available. The https://github.com/mank319/Go-For-It/commits/windows-cmake branch may be a good starting point for porting the current version of GoForIt! to Windows.

Others

It should be fairly straightforward to compile GoForIt! on Unix-like platforms as long as Gtk+3, libcanberra and cmake are available. Should you run into any difficulties feel free to add an issue.

Information For Nerds

GoForIt! is free and open source software licensed under the GPLv3. It has been written in Vala making heavy use of the GTK framework.

The user interface is inspired by the design philosophy of elementary OS and Gnome applications, striving for elegant simplicity.

Roadmap

  • "to-do list only" mode
  • Plugin support

Potential Future Features

  • time tracking functionality
    • option to make the timer count up
    • visualization and export of time tracking data
  • mechanics for handling more complex projects
  • support for different synchronization and storage backends

How To Build

To build GoForIt! you need to have the following software installed:

valac >= 0.36
cmake >= 2.8.9
gettext >= 1.9.7
gtk+-3.0 (libgtk-3-0, libgtk-3-dev) (>= 3.14)
glib-2.0 (libglib2.0-0, libglib2.0-dev)
libcanberra (libcanberra0, libcanberra-dev)
libpeas (libpeas-1.0-0, libpeas-dev)

To build all available plugins, the following development files are also necessary:

libayatana-appindicator3-dev

Use the following commands in this order to build GoForIt!:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make
sudo make install

Use the following commands to update the translation files:

mkdir build
cd build
make pot
make po

Information for maintainers

CONFIGURING.md contains some information about the configuration flags specific to Go For it!.

go-for-it's People

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  avatar  avatar

go-for-it's Issues

Provide up to date version for Windows

Issue by JMoerman
Wednesday Mar 29, 2017 at 11:53 GMT
Originally opened as Manuel-Kehl/Go-For-It#108


  • build with cmake on Windows (branch)
  • Provide (basic) build instructions
  • fix minor issues
  • Provide instructions on how to distribute
  • Provide up to date installer

Minor issues:

  • Correctly align menu with Gtk+3.0 3.22
  • Don't place widgets in the headerbar
  • Set GTK_CSD env variable to 0 by default.
  • No icon is shown in about dialog
  • Drag and drop of tasks is glitchy (probably a Gtk+3.0 bug)
  • Show notification on all screens, or at least the same screen as the application

How about Adding Notes to the tasks?

Issue by pulkit23
Tuesday Jun 14, 2016 at 10:36 GMT
Originally opened as Manuel-Kehl/Go-For-It#89


Hi,
Great App first of all. I have just started using it.

I was wondering if we can add a note feature to the task. It occurred to me when I realized that for a certain task to be performed later, I wanted more detailed description to be added onto it.
One thing is that I continue writing in task itself but that is surely not a cleaner approach.

I was thinking about integrating a note section once any task needs to be accessed.
Let me know your views on the idea.

Also, I myself would like to contribute. If it is possible, let me know as to how I can approach this.

Regards,
Pulkit

Buttons for previous/next task

Issue by orschiro
Sunday Apr 19, 2015 at 12:08 GMT
Originally opened as Manuel-Kehl/Go-For-It#54


Hi @mank319,

Great software. Thank you very much!

I have one suggestion:

What do you all think about adding both a previous and next task button to the timer tab?

This would allow the user to more easily switch among tasks (instead of having to go back to the To-Do tab and select a different task).

Thanks ahead for your response!

Robert

image

[Feature Request] Nested tasks! :)

Issue by rhoconlinux
Thursday Mar 26, 2015 at 13:44 GMT
Originally opened as Manuel-Kehl/Go-For-It#46


Hi there. Big fan of the app, it is really useful.
One thing that would be cool to add is the possibility of using nested tasks. Let's say:

Project 1

      task 1 

      task 2 

      task 3
Task A Project 2
      task 1

      task 2
Task B Task Z So to be able to organize in a better way which tasks are added and accomplished. This is also supported by todo.txt, which is obviously a hughe plus of Go for it. :)

Cheers and keep it going! Great work!!! :+1:

Do not show about dialog in menu and .desktop when installed via store?

Similar to #42, if installed via a store like AppCenter this information can be seen in the store.

Some issues with this:

  • Can only show one author
  • No way to credit artists

This information could be shown elsewhere like on the project homepage, but that requires people to put some effort in finding this information.

Place tabs in same place as menu button

From @nick87720z on September 21, 2017 19:30

For now tabs always have own bar.
I'm not sure, is it required by Elementary HIG, at least i could not find any headerbar mention, appart not about search/find difference.

This , of course, may need to make tabs itself as compact as possible, while not breaking HIG...
I guess, horizontal label spacing could be at least same as vertical (of course, if it is set in program.... might be in theme too:) ).

Yet, in this case there could be icons instead of text.
Images for "timer" and "done" are enough obvious, though what to assign for tasks button, to keep it simple...

Copied from original issue: Manuel-Kehl/Go-For-It#118

Push an update for elementary OS 5.0 Juno

Hey there! You might have heard that the public developer preview of elementary OS 5.0 Juno is now available. Now that this beta release is out, apps need to push a new release to be published in the Juno version of the AppCenter repositories. We'd love to see Go-For-It in AppCenter again!

You can read more about the Juno developer preview here

If you need help with updating your app for Juno, feel free to join the community slack!

Provide a snap package

Issue by CreamyCookie
Saturday Nov 19, 2016 at 16:54 GMT
Originally opened as Manuel-Kehl/Go-For-It#95


With Ubuntu 16.04 LTS a new packaging format, called snap was introduced. They have some additional benefits like sandboxing. Users can install them with a click and developers can provide (delta) updates. Of course one can also install snaps via the command line and, if submitted, from the Ubuntu store.

I have no idea how it works, but there's also https://github.com/mikix/deb2snap

Indicator

Issue by malteneuss
Tuesday Jan 06, 2015 at 16:17 GMT
Originally opened as Manuel-Kehl/Go-For-It#32


I believe that a little indicator up in the taskbar that starts automatically is helpful.
It could show the current task as well as the remaining time so that you don't have to swich to the app.

Dates

Issue by xordspar0
Tuesday Apr 21, 2015 at 21:41 GMT
Originally opened as Manuel-Kehl/Go-For-It#55


Go For It should add creation and completion dates to new and completed items, respectively.

See relevant documentation:
Creation date
Completion date

New model classes, storage backend and user interface - on the way to 2.0!

Issue by mank319
Thursday May 21, 2015 at 23:41 GMT
Originally opened as Manuel-Kehl/Go-For-It#61


Hello fellow developers โœŒ๏ธ

This is going to be one of the more important threads for collecting design and implementation concepts concerning the "new backend" which many planned future features, e.g. time tracking, depend on.

I have decided to represent the task as a subclass of Gtk.ListStore for now to provide a quick, yet fully functional result. However I never intended to solely rely on this approach. In fact I always had a set of "handcrafted model classes" in mind for a future version (>= 2.0), which we - hopefully - are about to reach during the next months ๐Ÿ˜‰

General Idea

The Model Classes

One might want to store information about a task than its name and done status. Utilizing Todo.txt allowed for some meta info to be encoded in the string itself, but even that is somewhat limited. Therefore I propose the creation of a new model structure, consisting of a Task class that can contain as many extra attributes as necessary and the implementation of a TaskStore class that is not based on Gtk.ListStore.

It must however provide a function to represent (part of) its data by means of a Gtk.ListStore to communicate with the UI elements involved. Also signals emitted by Gtk.TreeView must be handled so that the underlying model is varied accordingly.

The GUI

The GUI has been designed to be simple and minimalist. Adding tons of new fields to the task object must not "bloat" the user interface. Thus I considered exposing by default only task name, priority and done status.

Additional information like associated projects or contexts might be displayed underneath a task's entry upon selection of the task. Following this approach one could also solve #60 by truncating overflowing text indicated by an ellipsis. The truncated text might then be expanded to a multi line view, once the task has been selected.

More advanced attributes could be accessed via a modal dialog, e.g. upon double clicking.

The Storage Backend

Todo.txt has served us very well and offers many possibilities that we have not even utilized so far. That being said it might not be the best option for making all the potential meta data persistent, as this would break Todo.txt's minimalist philosophy to a certain degree.

I suggest evaluating several persistence APIs that allow for storing our new model objects in JSON or XML format. Sqlite might also be an option if you can provide strong arguments - I simply prefer somewhat human-readable and parsable alternatives ๐Ÿ˜„

But I love Todo.txt! ๐Ÿ˜  How am I supposed to sync with my phone now?!

So do I and be assured that I am not planning to drop Todo.txt support at all. It is simply not wise to use it as a main storage backend. I propose the implementation of a SynchronizationInterface class that handles exporting to and importing from various sources of which Todo.txt will be most easily implementable, as we already have the parsing code available. Following this approach we'd get the solution to #19 "for free".

Final Words

All the above matters are officially "open for discussion" now and I am excited about your opinions and engagement. Everyone is invited to comment on this issue and of course more than welcome to start implementing (hint: @JMoerman, @dardevelin, @voldyman, @fredmwangi et al. ๐Ÿ˜œ ) I propose a next-gen branch for all development in that regard.

I am currently in the middle of my bachelor's thesis so I might probably not be of much use during the next two months, but I wanted to publish my thoughts at this point, as @JMoerman has already indicated additions that would somewhat fall within this scope.

error: --header=com.github.jmoerman.go-for-it-0.h not found

Expected behavior

Should build

Actual behavior

$ LANG=C make -j3
[ 4%] Generating Constants.c;Utils.c;SettingsManager.c;TodoTask.c;TaskStore.c;FileWatcher.c;TaskManager.c;TaskTimer.c;DragListModel.c;Filter.c;view/TaskRow.c;view/TaskList.c;view/DragList.c;view/TimerView.c;view/SettingsDialog.c;view/AboutDialog.c;view/ContributeDialog.c;view/MainWindow.c;Main.c;com.github.jmoerman.go-for-it-0.vapi;com.github.jmoerman.go-for-it-0_internal.vapi;com.github.jmoerman.go-for-it-0.h;com.github.jmoerman.go-for-it-0_internal.h
error: --header=com.github.jmoerman.go-for-it-0.h not found

How to reproduce the behavior

Tried with version 7a12d39
Configure git version with default appname "com.github.jmoerman.go-for-it".
make

Operating System used

gentoo (calculate)

Installation source

own ebuild in local overlay. Right now updating ebuilds (still had them using mank319 git version, and latest stable release 1.5).

Timer works like a pomodoro

Issue by sic-f
Wednesday Feb 15, 2017 at 08:59 GMT
Originally opened as Manuel-Kehl/Go-For-It#105


Hi, great app you have.

Would be great also if the timer can be configured like a pomodoro.

There would be a longer break setting after x times of short breaks.

And the timer should automatically start after breaks.

Thanks!

Combine headerbar and toolbar when in headerbar mode

Expected behavior

When I use the headerbar mode, the app uses less space since it's a multi-purpose toolbar widget.

Actual behavior

The headerbar actually takes up more space since there's still the toolbar below with the static notebook (To-Do, Timer, Done) tabs.

How to reproduce the behavior

Out of the box ๐Ÿ˜„

Operating System used

elementary OS 0.4.1 Loki and an early build of elementary OS 5.0 Juno.

Installation source

Installed from AppCenter

Next task notification notifies the same task

Issue by AmrAdelKhalil
Wednesday Mar 29, 2017 at 05:52 GMT
Originally opened as Manuel-Kehl/Go-For-It#107


Hi your app is very good and i'm happy to have the chance to use it.
i'm using ubuntu 14.04 LTS and go-for-it 1.4.7
when the break counter is finished i noticed that the next task still the same one that i was working on, it didn't get the next one from my list
i hope you find time to fix this
Thanks

Ugly page switcher

Problem

The page switchers look off-place. They should better be integrated in the center of the headerbar, since it's only use right now is to house the settings icon.

Tip: To add a layout container to the center of the headerbar, set it as the window title using the function headerbar.set_custom_title (layout_container)

Operating System used

elementary OS

Installation source

elementary OS appcenter

Translation support

Issue by mank319
Thursday Jan 15, 2015 at 14:13 GMT
Originally opened as Manuel-Kehl/Go-For-It#35


At this stage of development I'd consider translation support a nice feature.

This blog post appears to give a comprehensive introduction into the topic. It doesn't look too complicated.

I will start investigating into it, when I have more spare time (~ February). If anyone else wants to give it a try, just assign yourself to the issue, so I can see, that you are already working on it.

Application does not support dark theme

Expected behavior

Application should follow dark theme

Actual behavior

image

How to reproduce the behavior

  1. Select a dark theme using a tool like elementary-tweaks
  2. Launch application

Installation source

AppCenter

Log timer to done.txt

Issue by visit1985
Saturday Apr 11, 2015 at 21:02 GMT
Originally opened as Manuel-Kehl/Go-For-It#49


Feature request:

Store the timer value in done.txt when one marks a task as done and display its value in the done panel.

This would make it 100% useful for me ๐Ÿ˜„

Awesome tool! Thanks!

Priority

Issue by xordspar0
Tuesday Feb 03, 2015 at 01:07 GMT
Originally opened as Manuel-Kehl/Go-For-It#41


Go For It should understand todo.txt priorities. It should list priority items first and maybe make them different colors.

Reload list

Issue by walkero-gr
Wednesday Jan 04, 2017 at 11:58 GMT
Originally opened as Manuel-Kehl/Go-For-It#103


Great app. A way to reload the list would be great on desktop app. If this could happen automatically, as soon as the TODO txt changes, that would be great. In cases of having the file in dropbox, when it changes on my mobile it could change on my desktops as well. Unfortunately, I have to close and open again the app.

Also, a force reload keyboard combination would also be useful.
Finally, a notification should appear, informing the user that the list got some changes.

Thank you for this app. Keep up the good work.

Auto Minimization

Issue by mank319
Wednesday Mar 18, 2015 at 23:52 GMT
Originally opened as Manuel-Kehl/Go-For-It#43


@THPubs pointed out, that automatic minimization after starting a task would be nice.
Personally I'd not default to that behaviour as it might confuse some users, but it would definitely be a nice optional addition!

3 State (Finished) To Do List

Issue by simarmata535
Sunday Nov 27, 2016 at 11:01 GMT
Originally opened as Manuel-Kehl/Go-For-It#100


I (i guess mostly) have jobs that ends with result:

  • Success
  • Done (with waiting for external response)
  • Failed (with note[s])

is this possible to implement?

i like to write the code myself, but haven't had the time yet and not seem any change in the future, so ... ;)

nb: this is should labeled as enhanchement but I have no idea to make it

advice for go-for-it

Issue by congleetea
Monday Mar 21, 2016 at 01:04 GMT
Originally opened as Manuel-Kehl/Go-For-It#82


Now I use go-for-it to manager the things I will do, But I have some idea for it. if user can change the order of transaction, I think it will be better. thanks.

Colors between listview and rest of the app window are not consistent

Expected behavior

Everything in the application window background should be homogeneously colored without inconsistencies, like

Actual behavior

The listview is white, while the other elements (page switcher and "add new task" entry) have gray backgrounds, creating background inconsistencies. Applies for the "To-Do" and "Done" pages.

What should be done

Ether the listview's background color should be changed to the same gray are the element's background or vice versa (make the window's background white).

Tip: To change the background of an element named "element"

  1. Create a css file
  2. Link the css file with your css code
  3. add the line element.set_name ("element_to_edit") (be careful, it's a string with "s)
  4. set the background-color property of element_to_edit to whatever you want

Operating System used

elementary OS

Installation source

elementary OS appcenter

Feature suggestion

Great app!

One suggestion
Timers should be tied to specific TODO's.
So you can preset timer length for each todo in your list!

ToDo List only and Sorting

Issue by P3lUZa
Wednesday Jun 10, 2015 at 04:22 GMT
Originally opened as Manuel-Kehl/Go-For-It#64


When you add the option to use it as "ToDo list only" it would be great to add tasks in reverse order, so instead of putting new notes at the bottom put them at the top. That would be awesome!

Keyboard shortcuts

Issue by JakubJecminek
Saturday Jul 23, 2016 at 09:53 GMT
Originally opened as Manuel-Kehl/Go-For-It#90


Hello, I really like this application but I've noticed that there are no keyboard shortcuts. This is productivity killer for me. Are there any plans for adding keyboard shortcuts? Thank you. #

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.