Skip to content

andrepg/do-it

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

412 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✅ Do It

Maintainability Code Coverage

This is a deadly simple task manager. Over the years I have used a lot of to-do tools: from the OG Wunderlist (later Microsoft To Do) to GNOME Tasks & Trello, Notion, etc.

All of them marvelous, some of them abandoned, but none of them as simple as I wanted. Too many subtasks, links, categories and options. So I decided to build my own.

All I want was an app to pop up, write down a simple task and done. None of them has a small footprint to use it this way, nor fit perfectly my requirements.

Do It is my solution. I just type a task, mark a project and hit Enter. Then I can edit, mark done or delete it whenever I want.

Light Mode Dark Mode
Light Mode Dark Mode

✨ Features

🖥️ This app is built to the GNOME Desktop Environment, with GTK4 and Adwaita.

  • Offline-first
  • Simple layout
  • Distributed by Flatpak
  • Built with Typescript

As an offline-first app, there is no synchronization features. Only import and export features are available.

I do plan to add synchronization features in the future, but probably as a paid feature. The core app will always be free and open source. Any paid features will be additional and optional, under a different license and agreement.

Simple management

There is only one single focus: handle my tasks. The following actions are essential, assembling the application core:

  • ✏️ Write down a task (and assing a project with @project-name)
  • 🏷️ Automagically group by projects
  • ✅ Mark as Done directly from thelist
  • ✍️ Edit any property afterwards
  • 🗑️ Or mark a task as deleted
  • 🧹 Clean up and purge all deleted tasks
  • ↕️ Sort your tasks with a range of options

Offline-first, privacy-oriented

This app does not have any tracking and/or analytics scripts. This means that the only way to give a feedback is contact author by using our Discussions threads.

You can give suggestions, ask for help and start usefull pools to the community. Before opening a bug is always welcome to search your problem in the Discussions first.

Your data is yours

All your data is stored locally on your device. You can export and import your data (in JSON format) at any time. The task format follows the ITask interface, being:

Property Type Description
id number Task id
title string Task title
created_at number Task creation date, in milliseconds
project string Task project
tags string[] Task tags, if any, as in ['tag1', 'tag2']
deleted boolean Task deleted status
done boolean Task done status

🗺️ Roadmap & Progress

The current roadmap to this application is available in the GitHub Project.

The issues and bugs can be reported in the Issues section.

🛠️ Build & Development

Prerequisites

  • Node.js 18+
  • Yarn
  • Flatpak and flatpak-builder
  • GNOME SDK

Development Commands

Command Description
yarn dev Run app with watch mode
yarn dev:install Compile and install locally
yarn dev:export Compile and export Flatpak bundle
yarn lint Run ESLint
yarn format Check Prettier formatting
yarn test Run tests

For full scripts and flags, see CONTRIBUTING.md.

💰 Sponsored by

This repo uses a third-party ads-service. And you can sponsor this project using GitHub Sponsors.

Sponsored by GitAds

Sponsor this project

 

Contributors