This action allows you to automatically render Images of your PCB and use them e.g. in a README.md
Rendering Image and Animations is working but the 3D models for Kicad are missing since the official docker image does not contain the config that was created at the first start-up.
3D Models provided by Kicad are now also rendered.
Even animations are rendered fine I wasn't able to embed them into a README.md
Also, this is using Kicad nightly since there is yet no Kicad release containing the image rendering command in the CLI.
-
Create the directory
.github/workflows
if it does not already exist. -
Add a new yaml in that directory e.g. pcb_image.yaml
-
Adding the configuration. Set the path to your .kicad_pcb file (you may need to replace
'refs/heads/main'
with'refs/heads/master'
on older repos)name: pcb_image on: push: jobs: render-image: name: render-image runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v4 - name: render pcb image uses: linalinn/kicad-render@main with: pcb_file: <path from repo root to .kicad_pcb> output_path: ${{ github.workspace }}/images - name: Setup Pages if: github.ref == 'refs/heads/main' uses: actions/configure-pages@v3 - name: Upload Artifact if: github.ref == 'refs/heads/main' uses: actions/upload-pages-artifact@v1 with: path: "images" deploy-pages: if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest needs: render-image permissions: pages: write id-token: write environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v2
-
Adding the images to an README.md
# My first PCB with automatic image generation ### Images ![top](<github_username>.github.io/<repo_name>/top.png) ![bottom](<github_username>.github.io/<repo_name>/bottom.png)
-
Prepare the repo
- Open your repo on GitHub
- Open
Setting
- (Left side) Click on
Pages
- Under
Build and deployment
select forSource
Github Action
from the dropdown.
-
git commit and push
You can find a example here in the m2sdr and the workflow for it here
The code for the Animation is from arturo182
Mastdon post with Gif and link to gist