A terminal based application (TUI) for enhancing your productive workstation π¨βπ»...
Report a Bug/Issue | Request a Feature | View Project Status
- Daβ‘hTerm
- π Features
- πΉ How to use this ?
- π This is a work-in-progress project
- β€ Contributing
- β License
DashTerm is an easy to use , open-source TUI dashboard which enables you to view all the essential data you need at your workplace in a single glance.
This app helps you in marking your events throughout the day, jotting down tasks, tracking down habits, logging journals and time-boxing work with pomo sessions - all enhancing your overall productivity with lightning speed β‘ And all this information is constantly synced with your cloud services !
TUI is one of the most frictionless ways to interact with data without getting involved in UI/UX traps. Over time, it becomes more efficient for inputting or viewing high frequency datapoints.
Please refer to the Contributing Section
Thanks in advance β€
Not an exaustive list - many more dashboard views are yet to come !
Some of the currently planned dashboard views are :
- π Google calendar
- View , edit and modify your daily events
- β
Google tasks
- View, edit and modify your tasks from any task lists
- π― Habitica - Habit Tracking
- Manage and track your dailies and habits synced with Habitica
- π Google Keep
- View and add your journalling notes to Google keep
- β² Pomodoro
- View and start-pause-stop pomodoro sessions
- python3
- pip or pip3
-
OAuth2 is used for authenticating with your Google account. The resulting token is placed in the
root directory
. When you first start any google API command inside TUI dashboard, the authentication process will proceed. Simply follow the instructions. -
In order to facilitate the token process :
- Create a New Project within the Google developer console 1. Activate the "Create" button.
- Enable the Google Calendar API 1. Activate the "Enable" button.
- Create OAuth2 consent screen for an "UI /Desktop Application".
1. Fill out required App information section
- Specify App name. Example: "gcalcli"
- Specify User support email. Example: your@gmail.com 2. Fill out required Developer contact information
- Specify Email addresses. Example: your@gmail.com 3. Activate the "Save and continue" button. 4. Scopes: activate the "Save and continue" button. 5. Test users
- Add your@gmail.com
- Activate the "Save and continue" button.
- Create OAuth Client ID 1. Specify Application type: Desktop app. 2. Activate the "Create" button.
- Grab your newly created Client ID (in the form "xxxxxxxxxxxxxxx.apps.googleusercontent.com") and Client Secret from the Credentials page.
- Download the Credential Json file and name it is as
credentials.json
- it should look like credentials-sample.json
-
DashTerm will automatically work with an HTTP Proxy simply by setting up some environment variables used by the gdata Python module:
http_proxy https_proxy proxy-username or proxy_username proxy-password or proxy_password
Note that these environment variables must be lowercase.
>> git clone https://github.com/Akash-Sharma-1/DashTerm.git
>> cd DashTerm
>> pip install -r requirements.txt
>> python tui.py
- Use Windows Terminal for the best experience
The project currently is divided in 2 milestones : Phase 1 and Phase 2
- Phase 1 is the milestone where the plan is construct robust implementations for the currently planned basic features.
- Phase 2 is the milestone where the plan is extend the tool to integrate more plugins and make it more user friendly
There are a few todo items left for the Phase 1 - you can view it in the Projects section. All the issues are tagged with Phase 1 and Phase 2 depending upon the severity and nature.
Currently, there are very few limited applications in the market, that could provide a single glance view of all the essential components of a work management system for a developer.
The definition of a work management system itself varies quite differently across devs, orgs and groups.
DashTerm could become a personalised plug-play TUI tool for everyone to manage their work effectively and enhance their productivity with plugins they feel empowered with .
Achieving this humongous task, is only a possiblity with your contributions to this project through bug reporting, proposing enhacements, documenting, code contributing and much more.
Kindly also refer to CONTRIBUTING.md for more details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details