/jodd

Jodd! Lightweight. Java. Zero dependencies. Use what you like. Thank you!

Primary LanguageJavaBSD 2-Clause "Simplified" LicenseBSD-2-Clause


GitHub release Build Status codecov Codacy Badge JitPack Stack Overflow BSD License

Produce lightweight code and focus on unleashing your full potential. Jodd is a set of developer-friendly and open-source Java micro-frameworks. It's designed to make things simple, but not simpler.

👋 Hello!

Welcome to Jodd - a unique, alternative world of Java :) You can find here some micro-frameworks and some handy tools. Nothing more, nothing less. Keep in mind that Jodd is mostly developed and maintained by a single person. Really wish to complete the vision I had... but I can only do so much.

Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.7 Mb

Jodd

Jodd is set of micro-frameworks and developer-friendly tools and utilities.

Use what you like. Thank you. 🙏

Cool libraries:

  • jodd-json - JSON parser and serializer.
  • jodd-lagarto - HTML parser with Jerry and CSSelly and Form tag.
  • jodd-http - tiny HTTP client.
  • jodd-mail - for easier email sending.

Micro-frameworks:

  • jodd-madvoc - slick MVC framework.
  • jodd-petite - pragmatic DI container.
  • jodd-proxetta - dynamic proxies and Paramo.
  • jodd-db - thin database layer and object mapper.
  • jodd-jtx - transactions management.

Less used tools:

  • jodd-decora - pages decorator.
  • jodd-htmlstapler - static page resources handler.
  • jodd-vtor - validation framework.

Full Stack Bundle:

  • jodd-joy - super-easy app framework, built with Jodd micro-frameworks.

Utilities:

  • jodd-core - contains many every-day utilities.
  • jodd-bean - our infamous BeanUtil, type inspectors and converters.
  • jodd-props - is the super-replacement for Java Properties.
  • jodd-servlet - with many servlet utilities, including nice tag library.

Read more in our official documentation.

:octocat: Building Jodd from source

Jodd is built with Gradle on JDK8, targeting Java 1.8. You don't have to install anything, the only prerequisites are Git and Java JDK.

Check out sources

Simply clone Jodd Git repo:

git clone https://github.com/oblac/jodd.git jodd

Compile and test, build jars

You can build the Jodd project with:

gradlew build

This will build all jars and run all unit tests. To skip the tests (for faster build), execute:

gradlew build -x test

Build full release with reports

To generate full release, including running integration tests and generating various reports, you need Docker v1.12+.

docker-compose -f etc/docker-compose.yml up
gradlew clean release

Integration tests requires some infrastructure (like databases), hence Docker is used.

Install Jodd into local Maven repo

gradlew install

💝 Contribute

Feel free to contribute! Follow these steps:

First time only:

  • fork the Jodd repo (upstream) to your GitHub account (origin)
  • clone origin as your local repo
  • install the ZenHub plugin to track tasks

Every other time:

  • update both origin and local repos from upstream
  • create new branch for a feature or bug fix
  • commit often :)
  • once when work is done, push local changes to your origin
  • send us a pull request (PR)

We will pickup up from there :)

🚀

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].