Skip to content

📮 GitHub Action to publish markdown files on dev.to platform, with assets hosted on GitHub.

License

Notifications You must be signed in to change notification settings

sinedied/publish-devto

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

c713cc0 Â· Jul 18, 2024
Jul 18, 2024
Jul 18, 2024
Jul 18, 2024
Jul 18, 2024
Oct 5, 2021
Mar 31, 2020
Jul 18, 2024
Feb 24, 2022
Apr 7, 2023
Jul 18, 2024
Jul 18, 2024

Repository files navigation

📮 publish-devto

Build Status XO code style License

GitHub Action to publish markdown files as articles on dev.to platform, with assets hosted on GitHub.

Usage

See action.yml.

steps:
- uses: actions/checkout@v4
- name: Publish articles on dev.to
  uses: sinedied/publish-devto@v2
  with:
    # Your dev.to personal API key to publish and update articles.
    # See https://docs.dev.to/api/#section/Authentication/api_key
    devto_key: ${{ secrets.DEVTO_TOKEN }}
    # Your GitHub personal access token, used to create commits for updated files.
    # If you have a protected branch, you need to use a personal access token
    # with the 'repo' permission.
    # See https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
    github_token: ${{ secrets.GITHUB_TOKEN }}
    # (Optional) The files to publish. Default is "posts/**/*.md"
    files: 'posts/**/*.md'
    # (Optional) The git branch to use. Default is 'main'.
    branch: main
    # (Optional) Use conventional commit messages. Default is false.
    # See https://www.conventionalcommits.org. 
    conventional_commits: true
    # (Optional) Do not make actual changes on dev.to.
    dry_run: false

You can use this template repository as an example setup.

Using a custom committer

You can specify who you want to appear in the commits made by this action by adding these environment variables to the action:

  env:
    GIT_COMMITTER_NAME: your_name
    GIT_COMMITTER_EMAIL: [email protected]

How does it work?

This github action delegates most of the work to the devto-cli push command.

You can find more information about how it works in the CLI readme.