Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tryfabric/memorable-milestones
A GitHub Action that puts your milestones on auto-pilot, using memorable emoji names π€
https://github.com/tryfabric/memorable-milestones
auto-pilot emoji fabric github-action instantish memorable-milestones milestones project-management schedule sprint
Last synced: about 2 months ago
JSON representation
A GitHub Action that puts your milestones on auto-pilot, using memorable emoji names π€
- Host: GitHub
- URL: https://github.com/tryfabric/memorable-milestones
- Owner: tryfabric
- License: other
- Created: 2020-05-01T23:55:20.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-08T15:14:15.000Z (about 2 years ago)
- Last Synced: 2024-10-31T10:39:11.466Z (2 months ago)
- Topics: auto-pilot, emoji, fabric, github-action, instantish, memorable-milestones, milestones, project-management, schedule, sprint
- Language: TypeScript
- Homepage: https://itsinstantish.com
- Size: 24.1 MB
- Stars: 24
- Watchers: 2
- Forks: 4
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Memorable Milestones
[![Memorable Milestones](https://res.cloudinary.com/m15y/image/upload/v1588977044/su/TJ5G67VHU/kmbjqinsp71vavcdth7j.svg)](https://github.com/instantish/memorable-milestones)ππ²π΅π¦π₯π₯ππ΄π¦πΊππ¦βοΈπΎβοΈπ
An opinionated GitHub Action that puts your milestones on auto-pilot, using memorable emoji names.
**You won't have to create or close milestones again.**
Generates weekly milestones (up to 8 weeks out), rotating between 16 pre-selected and memorable emoji names.
Due dates are set to every Thursday.
Check out this project's [milestones page](https://github.com/instantish/memorable-milestones/milestones) to see what the generated ones look like.
You can also follow our [Twitter bot](https://twitter.com/milestones_bot) to be notified when milestones start and end! π
![Milestones](https://user-images.githubusercontent.com/1459660/81017934-4539da00-8e18-11ea-8dc0-3af3b1474944.png)
**Benefits:**
β easy one-time setup, with **no config needed**
β automatically keeps schedule **up to date**
β you don't have to come up with your own memorable names
β the schedule is **global**, so you can collaborate with external teams easily
β even **closes milestones** that have no more open issues or PRs, so you don't have to
## Milestones
There are 16 weekly milestones. Names and due dates are pre-determined, so there's no setup!
The milestone schedule is **global**, meaning the `π Watermelon` sprint finishes on
August 27 2020 for everyone using this action. This makes it simple to collaborate across teams.### Due dates
Milestones are weekly and the action will create 8 of them for 8 weeks out. The due dates are each Thursday.
### Names
The names are designed to be easy to remember and distinct. Using emojis triggers the parts
of our brains that are great at remembering pictures!**What makes these milestones memorable?**
Here is the criteria used to *select* the 16 emojis:
- emoji picture is not too small or zoomed out
- emoji is not distractingly cutesy
- the correct name of the emoji should immediately come to mind when you see it
- knowing the emoji name, should be easy to find emoji and not confuse with another emoji
- shouldn't make you hungry π
- no scene-type emojis
- emojis used shouldn't look similar
- should have to do with nature or activities, not electronics
- shouldn't be too positive-associated or negative-associated
- shouldn't be strongly associated with a sprint type, like a π§Ή for cleanup sprint
- One word and ideally less than 3 syllables**How is order determined?**
Here is the criteria used to *order* the 16 emojis:
- emojis of similar colour should not be next to each other
- ideally, emojis of the same category should not be next to each other (food, activity, nature, animal)
- names of emojis should be in alphabetical order so it's each to recall that apple was before bike**How is name formatting determined?**
Names are one word and include the emoji and the name. Two spaces are put in between because that formatting
tends to look better on GitHub and on Slack with the Instantish integration.**Cool, so what are the names?**
Here are the names, followed by first due date (future due dates are a multiple of 16 weeks from then):
`π Apple` - May 14 2020
`π² Bike` - May 21 2020
`π΅ Cactus` - May 28 2020
`π¦ Duck` - June 4 2020 (@marissamarym's bday π§)
`π₯ Egg` - June 11 2020
`π₯ Frisbee` - June 18 2020
`π Grape` - June 25 2020
`π΄ Horse` - July 2 2020
`π¦ Lobster` - July 9 2020
`πΊ Map` - July 16 2020
`π Orange` - July 23 2020
`π¦ Porcupine` - July 30 2020
`βοΈ Sun` - August 6 2020
`πΎ Tennis` - August 13 2020
`βοΈ Umbrella` - August 20 2020
`π Watermelon` - August 27 2020## Functionality
This Action only creates or closes milestones (when they get to 100%). That means it doesn't
delete your current milestones or change their names or due dates. If a milestone with the exact same
name exists, it does not recreate it or edit it.Have a holiday coming up or skipping a milestone? Just close it and it won't be recreated.
## Usage
Actions are "individual tasks that you can combine to create jobs and customize your workflow." You can use them by creating a file that ends in `.yml` in the `.github` directory of your repo. A nice convention is to create a directory within `.github` called `workflows`, but you can set it up any way you like.
Create a new file at the path `.github/workflows/milestones.yml` and copy the following verbatim:
```yaml
name: "Memorable milestones"
on:
schedule:
- cron: "*/30 * * * *"jobs:
memorable-milestones:
runs-on: ubuntu-latest
steps:
- uses: instantish/[email protected]
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
```See [action.yml](./action.yml) for the full list of options.
You can add a badge to your repo's README (like [![Memorable Milestones](https://res.cloudinary.com/m15y/image/upload/v1588977044/su/TJ5G67VHU/kmbjqinsp71vavcdth7j.svg)](https://github.com/instantish/memorable-milestones)):
```markdown
[![Memorable Milestones](https://res.cloudinary.com/m15y/image/upload/v1588977044/su/TJ5G67VHU/kmbjqinsp71vavcdth7j.svg)](https://github.com/instantish/memorable-milestones)
```If you have questions about setting this up, feel free to reach out to [email protected] with subject line "Question about GitHub Action" π
## Action minutes
This is a rough estimate, but on average, this action takes <20s to run on Linux. Assuming it runs every 30 minutes and takes up to 30s, that's <24 minutes a day, or <744 minutes a month. This cost is per-repo.
GitHub's free plan allocates 2k minutes for free, the team plan allocates 3k, and enterprise allocates 50k.
If you run this once a day, (cron: `0 0 * * *`) instead of once every 30 minutes (cron: `*/30 * * * *`), it should use <15 minutes a month per repo, so you can configure it on up to ~100 repos without going over your free plan budget.
## Debugging
To see debug ouput from this action, you must set the secret `ACTIONS_STEP_DEBUG` to `true` in your repository. You can run this action in debug only mode (no actions will be taken on your milestones) by passing `debug-only` `true` as an argument to the action.
## Building and testing
Install the dependencies
```bash
$ npm install
```Build the typescript and package it for distribution
```bash
$ npm run build && npm run pack
```Run the tests :heavy_check_mark:
```bash
$ npm test
```---
Built with π by the team behind [Fabric](https://tryfabric.com).