What I built
I built GitHub action, that automatically translate commit message and pushes the message into GitHub pages using Jekyll for creating documentation or changelog.
Category Submission:
Maintainer Must-Haves
App Link
Screenshots
Description
After each commit, the message, that was written will be translated using Translator-API from mymemory.net. In .yml file, you can define target and source languages. After message was translated, the message will be sent to gh-pages, that is used as "documentation branch". I used Jekyll to create static webpage, that used markdown files for building pages. En voilà, at the end we have translated messages as documentation.
Link to Source Code
Github translated commits into gh-pages for documentation/changelog 📖
The project was created to generate translation for commit messages for supporting open source maintainers and repository owners to make it easier to write commit messages in other languages.
Key Technologies
- GitHub Pages
- GitHub Action
- MyMemory API (for translation)
- Jekyll
There are two option for languages (source and target language), other information will be got automatically from workflow. The .yml file look like:
name: Translate commit message
on: [push]
jobs
run-script:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install Node.js
uses: actions/setup-node@v2
with:
node-version: "18.x"
- name: Install dependencies
run: npm install
- name: Get Commit Message
id: commit_message
run: echo "::set-output name=message::$(cat $GITHUB_EVENT_PATH | jq -r '.commits[0].message')"
- name: Run Script
run: node action/index.js
env:
…Permissive License
Background (What made you decide to build this particular app? What inspired you?)
I was thinking, the main idea of open source is to connect people from all around the corner, to build some cool projects. But there are so many languages, so it's sometimes difficult, to describe, what did you do in your commit. In other side this is also important for repository-owner, to get important information about workflow. In the best case as documentation.
How I built it (How did you utilize GitHub Actions or GitHub Codespaces? Did you learn something new along the way? Pick up a new skill?)
I did learn a lot about GitHub Actions and GitHub Pages. For me, it was fascinating to create workflow, that automatically create new content for me. Functionality of "gh-pages" was for also something new to know, especially how does it work with Jekyll integration. I used all this information and of course the functionality of GitHub Actions to build it all in one tool. The information about workflow is also available in README file in my repository.
Top comments (0)