Jodd is set of open source Java micro-frameworks and tools; compact, yet powerful.
Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.7 Mb
📙 READ about Jodd:
- Official web site (site, documentation, information): http://jodd.org/
- GitHub page (5 min overview): http://oblac.github.io/jodd
- Jodd micro-frameworks (30 min overview): http://joddframework.org
- One-page love: http://jodd.org/about
💬 TALK about Jodd: jodd.slack.com
Jodd is split into many modules, so choose what to use. Some tools and utility modules are:
jodd-core
contains many utilities, includingJDateTime
.jodd-bean
, our infamousBeanUtil
, type inspectors and converters.jodd-props
is the super-replacement for JavaProperties
.jodd-mail
for easier email sending.jodd-upload
, handles HTTP uploads.jodd-servlet
with many servlet utilities, including nice tag library.jodd-http
, tiny HTTP client.
and some micro-frameworks:
jodd-madvoc
- slick MVC framework.jodd-petite
- pragmatic DI container.jodd-lagarto
- HTML parser withJerry
andCSSelly
.jodd-decora
- pages decorator.jodd-htmlstapler
- static page resources handler.jodd-proxetta
- dynamic proxies andParamo
.jodd-db
- thin database layer and object mapper.jodd-json
- JSON parser and serializer.jodd-vtor
- validation framework.
Read more in our official documentation.
If you are already using many Jodd jars, you can simply
just use the bundle jar: jodd-all
. It's a single jar with
all modules included; where all dependencies are optional. Why not :)
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.
Simply clone Jodd Git repo:
git clone https://github.com/oblac/jodd.git jodd
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
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.
gradlew install
Feel free to contribute! Follow these steps:
First time only:
- fork the Jodd repo (
upstream
) to your GitHub account (origin
). - clone
origin
as yourlocal
repo
Every other time:
- update both
origin
andlocal
repos fromupstream
- 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 :)
🚀