There are many ways in which you can contribute to the development of the library:
- Give us a Star on Github - you know you want to. ;)
- Using http4k to build something? Get in touch and tell everyone about it, or even just us!
- Sponsor us! The http4k team build the library out of love for software engineering and the OpenSource community, but running a project of this size is not without it's costs. Please see below for sponsorship options to help us keep the project running.
- Get help! The http4k team have produced a reasonable amount of training materials and are available for onsite or remote consulting engagements to help companies get the most out of the library.
If there are any message format library or templating engine bindings that you'd like to see supported, then please feel free to suggest them or provide a PR.
- JSON formats: create a new module with an implementation of
Json
by following theArgo
example in the source. - Templating engines: create a new module with a
Templates
implementation by following theHandlebarsTemplates
example in the source. - Server implementations: create a new module with a
Server
implementation by following theJetty
example in the source. - Client implementations: create a new module with a
Client
implementation by following theOkHttp
example in the source.
- Questions can be directed towards the Slack #http4k channel, or on Twitter @http4k
- For issues, please describe giving as much detail as you can - including version and steps to recreate
- At the moment, PRs should be sent to the master branch - this might change in future so check back everytime!
- Source/binary compatibility always must be kept as far as possible - this is a must for minor and patch versions
- PR changes should have test coverage. Note that we use Junit 5 as a test engine - which uses new
@Test
annotations. - All the PRs must pass the GitHub CI jobs before merging them
https://github.com/http4k/http4k
Testing with default settings is required when push changes. Note that we currently build against Java 21 (jEnv is good for managing multiple java versions):
./gradlew check
Thank you to all the people who have already contributed to http4k!
Thank you to all our backers! [Become a backer]
Thank you to all our sponsors! (please ask your company to also support this open source project by becoming a sponsor, either on GitHub Sponsors or directly with OpenCollective)
Many thanks to all of the software vendors who supply tools to help us deliver http4k to it's community:
Jetbrains kindly supplies the project with an Open Source License for the amazing IntelliJ IDE.
Tuple supplies the http4k team with their amazing Pair-Programming tool Tuple allowing us to collaborate to build the library. Pairing is ace - everyone should do it!
YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, and YourKit YouMonitor.