Based on shadowmoose's GHA-LoC-Badge!
Use cloc to count the source code lines of the specified source code files (not including blank lines or comments), as opposed to shadowmoose's, which counts all lines.
In a Github Action, download your project and run this action:
- name: Make Code Badge
uses: alexispurslane/GHA-LoC-Badge@2.0.0
id: badge
with:
debug: true
directory: ./
badge: ./output/badge.svg
patterns: '*.js' # Patterns in the format of a '.gitignore' file, separated by pipes.
ignore: 'node_modules'
Once the badge has been generated, use whatever tool you prefer to upload it somewhere. I personally prefer to push the badges to another branch of the project, where they can be linked easily.
You can see a full example file that does this here.
The output badge can be customized. Check out the input options here.