/jodd

Jodd! Lightweight. Java. Use what you like.

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


GitHub release Build Status codecov Codacy Badge JitPack Stack Overflow BSD License Twitter Help Contribute to Open Source

We want to inspire the world to create. To use tech skills and build something truly... Awesome. Beautiful. Helpful. Impactful. Now you can 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.

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.

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 utilities, including JDateTime.
  • 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 your local Maven

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 :)

🚀