An open API service indexing awesome lists of open source software.

https://github.com/xenoterracide/spring-app-commons

Common Functionality for any spring based projects I build
https://github.com/xenoterracide/spring-app-commons

auto-updated java jpms spring spring-boot spring-data-jpa spring-graphql spring-security

Last synced: 2 months ago
JSON representation

Common Functionality for any spring based projects I build

Awesome Lists containing this project

README

          

# README

## Contributing

### Languages

[asdf](https://asdf-vm.com) and [direnv](https://direnv.net) are suggested, but you can use whatever you'd like to get

- Java
- Ktlint
- NodeJs
- Python

versions are committed in `.tool-versions`, simply following the major versions there will work.

add a way to export these to your `PATH` in your `~/.profile` so that commit hooks in your IDE works.

### Build Tools

- [Gradle](https://docs.gradle.org/current/userguide/command_line_interface.html)
- [Yarn 4](https://yarnpkg.com/getting-started/install) (via Corepack)

#### Fetching Dependencies

In order to get snapshots of dependencies, you must have a GitHub token in your `~/.gradle/gradle.properties` file. This
file should look like:

```properties
ghUsername=
ghPassword=
```

You should generate your PAT
as [Github Documents here](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry#authenticating-to-github-packages).

> a personal access token (classic) with at least read:packages scope to install packages associated with other private
> repositories (which GITHUB_TOKEN can't access).

Then run.

```sh
# Enable Corepack, install Node dev tools, run postinstall, then verify Gradle deps
corepack enable
yarn install --immutable --inline-builds --check-resolutions
yarn run -T postinstall
./gradlew dependencies
```

If you need to run the postinstall step directly, you can recreate and use the Python lock file via pip-compile (PEP 621):

```sh
# Regenerate requirements.txt from PEP 621 dependencies in pyproject.toml
pip-compile -o requirements.txt pyproject.toml

# Then install and set up commit hooks
pip install -r requirements.txt && git config core.hooksPath .config/git/hooks
```

### Committing

Use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/).

## Licenses

- Java: SPDX-Identifier( [AGPL-3.0-or-later](https://choosealicense.com/licenses/agpl-3.0/)
WITH [Universal-FOSS-exception-1.0](https://spdx.org/licenses/Universal-FOSS-exception-1.0.html)
AND [CC BY 4.0](https://choosealicense.com/licenses/cc-by-4.0/) )
OR [CC-BY-NC-4.0](https://creativecommons.org/licenses/by-nc/4.0/)\
For clarity the intent here is to maintain this software for _any_ open source and non-commercial use. Attribution is
required. If you would like to use this for commercial purposes please contact me.
- Gradle Kotlin and Config Files: [MIT](https://choosealicense.com/licenses/mit/)
- Documentation including Javadoc: [CC-BY-NC-4.0](https://creativecommons.org/licenses/by-nc/4.0/)

Copyright © 2025 Caleb Cushing.