README.md
1# _GoForIt!_
2
3_GoForIt!_ has been translated into many languages already. If your language is missing or incomplete, please help to translate it at [Weblate](https://hosted.weblate.org/engage/go-for-it/?utm_source=widget).
4
5[![Translation status](https://hosted.weblate.org/widgets/go-for-it/-/horizontal-auto.svg)](https://hosted.weblate.org/engage/go-for-it/?utm_source=widget)
6## Information for End Users
7
8_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](https://jmoerman.github.io/go-for-it/).
9
10![Screenshot](screenshot.png)
11
12### How To
13
14The original author made the following video explaining the workflow of _GoForIt!_:
15
16[![GoForIt! Promotion Video](https://img.youtube.com/vi/mnw556C9FZQ/0.jpg)](https://www.youtube.com/watch?v=mnw556C9FZQ)
17
18This video shows a very old version of _GoForIt!_, but most of what is shown still applies to the current version.
19
20### Storage and Synchronisation
21
22To-do lists are stored in the [Todo.txt](http://todotxt.com/) 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](https://play.google.com/store/apps/details?id=com.todotxt.todotxttouch&hl=en) or [iOS](https://itunes.apple.com/us/app/todo.txt-touch/id491342186?ls=1&mt=8) or the alternative Android client [Simpletask](https://play.google.com/store/apps/details?id=nl.mpcjanssen.todotxtholo&hl=en)).
23A comprehensive tutorial about setting up *GoForIt!* with *Simpletask* can be found [here](http://itsfoss.com/go-for-it-to-do-app-in-linux/).
24
25### Download and Installation
26
27#### GNU/Linux Packages
28
29##### elementary OS
30
31[![Get it on AppCenter](https://appcenter.elementary.io/badge.svg)](https://appcenter.elementary.io/com.github.jmoerman.go-for-it)
32
33##### Ubuntu
34
35I maintain a [Launchpad PPA](https://launchpad.net/~go-for-it-team/+archive/ubuntu/go-for-it-stable) which can be used to acquire .deb packages. On Ubuntu (+ derivates) it is recommended to add the PPA for automatic updates:
36
37 sudo add-apt-repository ppa:go-for-it-team/go-for-it-stable && sudo apt-get update
38 sudo apt-get install go-for-it
39
40For git versions use https://code.launchpad.net/~go-for-it-team/+archive/ubuntu/go-for-it-daily instead.
41
42##### Arch Linux
43
44- [Arch Linux (Stable)](https://aur.archlinux.org/packages/go-for-it/)
45- [Arch Linux (Git)](https://aur.archlinux.org/packages/go-for-it-git/)
46
47Build it with `makepkg` or use your favorite [aur helper](https://wiki.archlinux.org/index.php/AUR_helpers).
48
49##### Flatpak
50
51[Flatpak](https://flatpak.org) packages support multiple distributions and are sandboxed.
52
53Stable releases are hosted on [Flathub](https://flathub.org):
54
55 flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
56 flatpak install flathub de.manuel_kehl.go-for-it
57
58#### FreeBSD
59
60_GoForIt!_ is avaiable in the [FreeBSD Ports Collection](https://freshports.org/deskutils/go-for-it):
61
62 pkg install go-for-it
63
64#### Windows
65
66Unfortunately, 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.
67
68#### Others
69
70It should be fairly straightforward to compile _GoForIt!_ on Unix-like platforms as long as Gtk+3, libcanberra and cmake are available.
71Should you run into any difficulties feel free to add an [issue](https://github.com/JMoerman/Go-For-It/issues).
72
73## Information For Nerds
74
75_GoForIt!_ is free and open source software licensed under the GPLv3. It has been written in _Vala_ making heavy use of the _GTK_ framework.
76
77The user interface is inspired by the design philosophy of [elementary OS](http://elementary.io/) and [Gnome](http://www.gnome.org/) applications, striving for elegant simplicity.
78
79### Roadmap
80
81- "to-do list only" mode
82- Plugin support
83
84### Potential Future Features
85
86- time tracking functionality
87 - option to make the timer count up
88 - visualization and export of time tracking data
89- mechanics for handling more complex projects
90- support for different synchronization and storage backends
91
92### How To Build
93To build *GoForIt!* you need to have the following software installed:
94
95 valac >= 0.36
96 cmake >= 2.8.9
97 gettext >= 1.9.7
98 gtk+-3.0 (libgtk-3-0, libgtk-3-dev) (>= 3.14)
99 glib-2.0 (libglib2.0-0, libglib2.0-dev)
100 libcanberra (libcanberra0, libcanberra-dev)
101 libpeas (libpeas-1.0-0, libpeas-dev)
102
103To build all available plugins, the following development files are also necessary:
104
105 libayatana-appindicator3-dev
106
107Use the following commands in this order to build *GoForIt!*:
108
109 mkdir build
110 cd build
111 cmake -DCMAKE_INSTALL_PREFIX=/usr ..
112 make
113 sudo make install
114
115Use the following commands to update the translation files:
116
117 mkdir build
118 cd build
119 make pot
120 make po
121
122### Information for maintainers
123
124CONFIGURING.md contains some information about the configuration flags specific to _Go For it!_.
125