MfGames Tasks v0.0
Up a Level
As some of you know, I have a lot of irons in the fire. Some of them are the natural problem of programmers where many interesting things never take root but sometimes there are a few that do and they quickly blossom in needing more time. In other cases, it is commissions due, weekly chapters, and the normal household to do list.
I keep most of my issues in GitLab[1] including things I have to do for sales tax, filing dates, and even per-project items. I also keep my novels and commissions there, along with associated issues to keep each moving.
So, when I get stressed out, I write things to help me. In this case, I decided to write `mfgames-tasks` which pulls all of those assigned issues and throws it into a single Markdown file which I keep on Dropbox across all my machines. This way, it picks up the items from each of those repositories and jams it into a file that looks like this:
# dmoonfire / mfgames-culture-js
- Errors representing some seconds and milliseconds
- https://api.github.com/repos/dmoonfire/mfgames-culture-js/issues/3
# dmoonfire / mfgames-locking-cil
- [simple] Add/update unit tests
- https://gitlab.com/dmoonfire/mfgames-locking-cil/issues/2
- [simple] Get this packaged and uploaded to NuGet
- https://gitlab.com/dmoonfire/mfgames-locking-cil/issues/1
# typewriter-press / events
- {2018-08-30} Register as an attendee
- https://gitlab.com/typewriter-press/events/issues/2
- {2018-03-30} Register as a vendor and get a table
- https://gitlab.com/typewriter-press/events/issues/1
It handles due dates (in `{2018-03-30}`) and labels (such as `[simple]`). If there are none, it skips them. On GitLab, if the issue is assigned to a milestone and doesn't have a due date of its own, it uses the milestone's due date.
Another big feature is that GitLab issues that are assigned to a milestone that hasn't started, it doesn't include them. This lets me set up quarterly or monthly milestones (e.g., taxes) and have them pop up when they are needed.
Installation
I wrote this in Typescript because I really like it as a scripting language and it has a nice ecosystem. Installation is pretty simple:
npm install --global mfgames-tasks-cli
Configuration
As my preferred configuration file format, I have a `mfgames-tasks.yaml` file on my laptop. It looks somewhat like this:
# This is what defines the sources to scan for outstanding tasks.
sources:
- id: github-dmoonfire
type: github
token: TOKEN # Get from GitHub settings
- id: gitlab-dmoonfire
type: gitlab
token: TOKEN # Get from GitLab settings
# You can have multiple GitLab and GitHub accounts.
# This defines how the files are written out. There is only one choice and it doesn't have formatting.
outputs:
- type: markdown
id: md
path: /path/to/output
With the above file, I just have this added to my hourly cron:
mfgames-tasks write path/to/mfgames-tasks.yaml
Documentation
Yeah, there isn't a lot of documentation here.
NPM (https://www.npmjs.com)
Now, to work on the 332 lines of items on my list.
Metadata
Categories:
Tags:
MfGames Tasks
Footer
Below are various useful links within this site and to related sites (not all have been converted over to Gemini).
Contact
Biography
Bibliography
Support
Fedran (fedran.com)
Coding (https://mfgames.com)
The Moonfires (https://moonfire.us)
Tags
Colophon
License
Response: 20 (Success), text/gemini
| Original URL | gemini://d.moonfire.us/blog/2018/02/23/mfgames-tasks/ |
|---|---|
| Status Code | 20 (Success) |
| Content-Type | text/gemini; charset=utf-8; lang=en-US |