Chips-n-Salsa
InteractiveBinPacking
Our great sponsors
Chips-n-Salsa | InteractiveBinPacking | |
---|---|---|
15 | 1 | |
52 | 8 | |
- | - | |
8.4 | 8.1 | |
6 days ago | 6 days ago | |
Java | Java | |
GNU General Public License v3.0 only | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Chips-n-Salsa
-
Deploy a Documentation Website for a Java Library Using GitHub Actions
name: docs on: push: branches: [ master ] paths: [ '**.java', '.github/workflows/docs.yml' ] pull_request: branches: [ master ] release: types: [created] workflow_dispatch: jobs: docs: runs-on: ubuntu-latest steps: - name: Checkout the repo uses: actions/checkout@v3 - name: Checkout the gh-pages branch uses: actions/checkout@v3 with: fetch-depth: 0 ref: gh-pages path: gh-pages - name: Set up JDK 17 uses: actions/setup-java@v3 with: distribution: 'adopt' java-version: '17' - name: Build docs with Maven run: mvn compile javadoc:javadoc - name: Copy to Documentation Website Location if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} run: | rm -rf gh-pages/api cp -rf target/site/apidocs/. gh-pages/api - name: Tidy up the javadocs if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} id: tidy uses: cicirello/javadoc-cleanup@v1 with: base-url-path: https://chips-n-salsa.cicirello.org/ path-to-root: gh-pages user-defined-block: | - name: Log javadoc-cleanup output if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} run: | echo "modified-count = ${{ steps.tidy.outputs.modified-count }}" - name: Commit documentation changes without pushing yet if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} run: | cd gh-pages if [[ `git status --porcelain` ]]; then git config --global user.name 'github-actions' git config --global user.email '41898282+github-actions[bot]@users.noreply.github.com' git add -A git commit -m "Automated API website updates." fi cd .. - name: Generate the sitemap if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} id: sitemap uses: cicirello/generate-sitemap@v1 with: base-url-path: https://chips-n-salsa.cicirello.org/ path-to-root: gh-pages - name: Output stats if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} run: | echo "sitemap-path = ${{ steps.sitemap.outputs.sitemap-path }}" echo "url-count = ${{ steps.sitemap.outputs.url-count }}" echo "excluded-count = ${{ steps.sitemap.outputs.excluded-count }}" - name: Commit documentation website sitemap and push all commits if: ${{ github.event_name == 'release' || github.event_name == 'workflow_dispatch' }} run: | cd gh-pages if [[ `git status --porcelain` ]]; then git config --global user.name 'github-actions' git config --global user.email '41898282+github-actions[bot]@users.noreply.github.com' git add -A git commit -m "Automated API website sitemap update." fi git push cd ..
-
Deploying Java Artifacts to Multiple Maven Repositories with GitHub Actions
Website: https://chips-n-salsa.cicirello.org/
-
How to Patch the Deprecated set-output in GitHub Workflows and in Container Actions
The complete workflow file that this example is derived from is maven-publish.yml.
-
How to Use Maven Profiles to Selectively Activate Plugins and Other Configuration from the Command Line
Let's look at a real example, again from Chips-n-Salsa, where I publish artifacts of the library on both Maven Central as well as to GitHub Packages. We'll build up to the full example. First, consider the configuration below:
-
How to Use the Maven Shade Plugin if Your Project Uses Java Platform Module System
To see a live example, you can consult the pom.xml of one of my projects. Here is the GitHub repository:
-
Configuring GitHub's Linguist to Improve Repository Language Reporting
GitHub Language Chart From https://github.com/cicirello/Chips-n-Salsa
-
Ahead-of-time JitPack Builds with Custom GroupId via GitHub Actions
Website: https://chips-n-salsa.cicirello.org/
-
How to Configure JitPack for Recent JDK Versions
Important Note: Because of the way JitPack essentially builds a snapshot of your repository, even for release builds, the jitpack.yml must be present within the specific snapshot of your repository in order to apply. For example, for the library that this post is based upon, Chips-n-Salsa, the first release where the repository contains the configuration file is 5.0.1, so JitPack will fail to build any prior version, although earlier versions are available via Maven Central and GitHub Packages. Likewise, if you specify any commit hash prior to that of the commit where that configuration file was introduced, the JitPack build will also fail.
-
How to Enable DEV Post Embeds for Pages From Your Website
Chips-n-Salsa - A Java library of customizable, hybridizable, iterative, parallel, stochastic, and self-adaptive local search algorithms
- Badges - TL;DR for your repository's README
InteractiveBinPacking
-
Configuring GitHub's Linguist to Improve Repository Language Reporting
For example, one of my repositories, InteractiveBinPacking, is an educational tool implemented in Java, with a few HTML files for contents of dialog boxes, etc, and also has a directory of example assignments with LaTeX source to enable course instructors to easily customize assignments. HTML and LaTeX are both classified as markup languages, and Java obviously as a programming language so those are all included by default, so a language chart with Java, HTML, and TeX makes sense. So far, no configuration necessary. I published a short journal article about the tool in the Journal of Open Source Education. That journal conducts the peer review within the repository itself, with a paper directory holding a Markdown file with the content of the paper, and usually a BibTeX file with the citation data for the references of the paper. Markdown is automatically excluded as prose, which is fine here. However, the BibTeX file would by default be included in the TeX count. The directory of example assignments in LaTeX is part of the purpose of the repository, but this BibTeX file is in a sense part of the documentation of the tool.
What are some alternatives?
jacoco-badge-generator - Coverage badges, and pull request coverage checks, from JaCoCo reports in GitHub Actions
selenium4poc - Learn Web Automation testing using Selenium Webdriver 4.
generate-sitemap - Generate an XML sitemap for a GitHub Pages site using GitHub Actions
awesome-readme - A curated list of awesome READMEs
user-statistician - Generate a GitHub stats SVG for your GitHub Profile README in GitHub Actions
Modern Java - A Guide to Java 8 - Modern Java - A Guide to Java 8
setup-java - Set up your GitHub Actions workflow with a specific version of Java
upload-artifact
linguist - Language Savant. If your repository's language is being reported incorrectly, send us a pull request!
maven-simple - Example Maven project demonstrating the use of
cicirello - My GitHub Profile