This GitHub Action generates a README.md
summary for your notes repository and an api.json
JSON API. You can use the workflow to generate a list of items in your repository.
Some sample repositories that use this workflow:
First, setup your repository with this file structure:
βββ README.md
βββ .github
β βββ workflows
β βββ readme.yml
βββ notes
βββ 2019
β βββ note-name.md
β βββ another-note-name.md
βββ 2020
βββ a-third-note-name.md
Add the following comment in your README.md
file. This will be replaced with a summary of the notes you've participated it:
<!--autogenerated--><!--/autogenerated-->
Finally, create the GitHub Actions workflow in .github/workflows/readme.yml
:
name: Readme CI
on:
# When you push to the `main` branch
push:
branches: [main]
# And optionally, once every day
schedule:
- cron: "0 0 * * *"
# To manually run this workflow
workflow_dispatch:
jobs:
summarize:
name: Update README.md and api.json
runs-on: ubuntu-latest
# Don't run this workflow when [skip ci] is passed
if: "!contains(github.event.head_commit.message, '[skip ci]')"
steps:
- name: Checkout
uses: actions/checkout@v3
with:
# Fetch full history to figure out created date
fetch-depth: 0
- name: Update note summary
uses: AnandChowdhary/notes-summary@HEAD
with:
token: ${{ secrets.GITHUB_TOKEN }}
directory: "notes"
Your README.md
file should then contains a summary of the notes in the notes
directory:
Property | Description | Required |
---|---|---|
token |
GitHub token | Yes |
directory |
Directory | Yes |
caption |
JS function | No |
commitMessage |
Commit message | No |
commitEmail |
Commit email | No |
commitUsername |
Commit username | No |
- Code: MIT Β© Anand Chowdhary
- "GitHub" is a trademark of GitHub, Inc.