Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cancerberosgx/today
command line app for todo-lists, dates and google calendar (exercise for learning ruby)
https://github.com/cancerberosgx/today
Last synced: about 1 month ago
JSON representation
command line app for todo-lists, dates and google calendar (exercise for learning ruby)
- Host: GitHub
- URL: https://github.com/cancerberosgx/today
- Owner: cancerberoSgx
- Created: 2019-11-25T20:01:06.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-10-06T08:13:53.000Z (about 2 years ago)
- Last Synced: 2024-04-13T16:20:19.612Z (9 months ago)
- Language: Ruby
- Homepage:
- Size: 62.5 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# today
Command line tool for daily work TODO lists and calendar visualization.
# Usage
## List today's TODOs
```
$ today
1 [x] brush my teeth
2 [ ] review PR 1234
3 [ ] reply John email
```On a daily basis, the first time the user executes `today` a new TODO list will be created containing yesterday's non-checked TODOs.
## Add a new TODO for today
```
$ today add "optimize addToCart()"
1 [x] brush my teeth
2 [ ] review PR 1234
3 [ ] reply John email
4 [ ] optimize addToCart()
```Note: if user enters `today add` it will be prompted for the new TODO title.
## Check a TODO
```
$ today check 2
1 [x] brush my teeth
2 [x] review PR 1234
3 [ ] reply John email
4 [ ] optimize addToCart()
```Note: to check all TODOs enter `today check all`.
## Share today's TODO by email (TODO)
```
$ today share [email protected]
An email with today's TODOs was send to [email protected]
```Note: is user enters `today share` it will be inquired with the email address(es).
## Show today's calendar (TODO)
```
$ today calendar
10:00 - 10:15 Sync Onboarding (Wye-planta baja-Sonic)
---------------------------------------------------------------------
11:00 - 12:00 Meet Jose Ignacio (Wye-garage-Zelda)
15:00 - 15:30 Customer X, Feature Y discussion (https://meet.google.com/_meet/eff-ntjs-sxm?hs=122)
```# TODO
* merge past unchecked TODOs in today's new day file
* multiple sessions
* same file contains array of Today
* `today set dev` sets a session ('dev') for future commands
* `today -s person add 'call ma'` exec command with session 'person'
* time
* `today +1 add 'PR 12345'` (adds a TODO for tomorrow)
* today calendar -1 (yesterday's calendar)
* today --next friday add 'buy sister gift'# Ideas
# Original project notes
## Motivation
> Con el objetivo de poner en práctica los valores *"Doy lo mejor de mi y busco superarme"* y *"Me animo a cosas nuevas y veo en cada situación una oportunidad"*, comenzar a construir la aplicación `today` en `ruby` , un lenguaje no conocido para mi, a modo de generar nuevos aprendizajes producto de salir de mi zona de confort.
## Scope
`today calendar` only makes sense if it uses google calendar for which user needs to provide credentials. I would leave this feature once I finish the "TODO" feature.
Nice to have: optionally synchronize today's TODO with trello instead of keeping the info locally.
Nice to have: if user gives an extra number argument, the action will apply to other day than today, for example `today calendar 1` will show tomorrow's activities, or, `today -1` will show yesterday's TODOs.
## What did I learn?
* basic ruby syntax, class declaration, inheritance, control statements, array manipulations
* Gemfile, bundler, dependencies, libraries
* ansi, erb, command line args processing, google api, rubywatcher for TDD