ART
ART is a kit of modules for developing multifunctional applications.
Badges
Build and Binaries
Releases are available via Maven Central.
Example:
plugins {
id("io.github.art.project") version "1.0.113"
}
art {
idea()
lombok()
// Modules that includes into result project *.jar
// Alternatives: providedModules (not included into jar) and
// testModules (use in tests sources)
embeddedModules {
// For specify version. Default version is "1.+"
//useVersion("1.+")
// For full kit of modules
kit()
}
}Requirements
- Java 8+ (9, 10, 11, 12, 13)
- Gradle 6+ (to migrate from Gradle 5, delete
gradle,.gradlefolders and executerefresh gradle) - If working with web - installed nodejs and npm
- If using tarantool on Windows - installed WSL (Tarantool is not supported on Windows System)
- If using sql - installed SQL db
Bugs and Feedback
For bugs, questions and discussions please use the Github Issues.
Join us on Telegram: https://tx.me/art_github
Join us on Discord: https://discord.gg/jaqxB38
Documentation
- How To
- Examples
- Concepts & motivation
- Use cases
- Modules
- Universal value model
- Auto configuring
- Configuration specifications
- Public API
- Constraints & Development
Dependency libraries
com.typesafe:config:1.4.0com.google.guava:guava:28.1-jreio.vavr:vavr:0.10.2org.apache.logging.log4j:log4j-slf4j-impl:2.12.1org.slf4j:slf4j-api:1.7.29org.apache.logging.log4j:log4j-jcl:2.12.1commons-logging:commons-logging:1.2org.apache.logging.log4j:log4j-core:2.12.1org.apache.logging.log4j:log4j-jul:2.12.1org.apache.logging.log4j:log4j-api:2.12.1com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.10.1com.fasterxml.jackson.core:jackson-databind:2.10.1com.fasterxml.jackson.core:jackson-core:2.10.1io.github.resilience4j:resilience4j-circuitbreaker:1.1.1-SNAPSHOTio.github.resilience4j:resilience4j-ratelimiter:1.1.1-SNAPSHOTio.github.resilience4j:resilience4j-retry:1.1.1-SNAPSHOTio.github.resilience4j:resilience4j-metrics:1.1.1-SNAPSHOTio.github.resilience4j:resilience4j-bulkhead:1.1.1-SNAPSHOTio.github.resilience4j:resilience4j-timelimiter:1.1.1-SNAPSHOTio.grpc:grpc-protobuf:1.24.0io.grpc:grpc-stub:1.24.0io.grpc:grpc-netty-shaded:1.24.0io.netty:netty-all:4.1.42.Finalorg.zalando:logbook-core:1.13.0org.apache.httpcomponents:httpcore:4.4.12org.zalando:logbook-httpclient:1.13.0org.apache.httpcomponents:httpasyncclient:4.1.4org.apache.httpcomponents:httpclient:4.5.10io.micrometer:micrometer-registry-prometheus:1.3.1io.github.mweirauch:micrometer-jvm-extras:0.1.4io.prometheus:simpleclient_dropwizard:0.7.0io.dropwizard.metrics:metrics-jvm:4.0.7org.apache.tomcat.embed:tomcat-embed-core:9.0.27org.apache.tomcat:tomcat-servlet-api:9.0.27org.zalando:logbook-servlet:1.13.0org.apache.logging.log4j:log4j-web:2.12.1org.rocksdb:rocksdbjni:6.3.6org.msgpack:msgpack-core:0.8.18org.jeasy:easy-random:4.1.0org.jeasy:easy-random-core:4.1.0com.google.guava:failureaccess:1.0.1com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guavacom.google.code.findbugs:jsr305:3.0.2org.checkerframework:checker-qual:2.8.1com.google.errorprone:error_prone_annotations:2.3.2com.google.j2objc:j2objc-annotations:1.3org.codehaus.mojo:animal-sniffer-annotations:1.18io.vavr:vavr-match:0.10.2org.yaml:snakeyaml:1.24com.fasterxml.jackson.core:jackson-annotations:2.10.1io.github.resilience4j:resilience4j-core:1.1.1-SNAPSHOTio.grpc:grpc-protobuf-lite:1.24.0io.grpc:grpc-api:1.24.0com.google.protobuf:protobuf-java:3.9.0com.google.api.grpc:proto-google-common-protos:1.12.0io.grpc:grpc-core:1.24.0org.zalando:logbook-api:1.13.0org.zalando:faux-pas:0.8.0org.apiguardian:apiguardian-api:1.0.0org.apache.httpcomponents:httpcore-nio:4.4.10commons-codec:commons-codec:1.11io.micrometer:micrometer-core:1.3.1io.prometheus:simpleclient_common:0.7.0io.prometheus:simpleclient:0.7.0io.dropwizard.metrics:metrics-core:3.1.2org.apache.tomcat:tomcat-annotations-api:9.0.27com.sun.activation:javax.activation:1.2.0org.objenesis:objenesis:3.1io.github.classgraph:classgraph:4.8.52io.grpc:grpc-context:1.24.0io.perfmark:perfmark-api:0.17.0com.google.code.gson:gson:2.7com.google.android:annotations:4.1.1.4io.opencensus:opencensus-contrib-grpc-metrics:0.21.0io.opencensus:opencensus-api:0.21.0org.hdrhistogram:HdrHistogram:2.1.11org.latencyutils:LatencyUtils:2.0.3com.squareup:javapoet:1.11.1org.projectlombok:lombok:1.18.10org.membrane-soa:service-proxy-core:4.6.1org.membrane-soa:service-proxy-annot:4.6.1com.googlecode.jatl:jatl:0.2.2com.predic8:soa-model-core:1.6.0com.predic8:xmlbeautifier:1.2.2javax.annotation:com.springsource.javax.annotation:1.0.0com.google.api-client:google-api-client:1.21.0com.google.http-client:google-http-client-jackson2:1.21.0commons-io:commons-io:2.4org.bouncycastle:bcpkix-jdk15on:1.54org.bitbucket.b_c:jose4j:0.4.4fi.solita.clamav:clamav-client:1.0.1org.codehaus.groovy:groovy-templates:2.4.12(only for Spock)commons-lang:commons-lang:2.5org.codehaus.groovy:groovy-json:2.4.7(only for Spock)org.codehaus.groovy:groovy-xml:2.4.12(only for Spock)org.codehaus.groovy:groovy:2.4.12(only for Spock)com.google.oauth-client:google-oauth-client:1.21.0com.google.http-client:google-http-client:1.21.0org.bouncycastle:bcprov-jdk15on:1.54com.google.code.findbugs:jsr305:1.3.9com.google.errorprone:error_prone_annotations:2.3.3org.apache.kafka:kafka_2.12:2.3.1org.apache.kafka:kafka-clients:2.3.1com.fasterxml.jackson.module:jackson-module-scala_2.12:2.10.0com.fasterxml.jackson.dataformat:jackson-dataformat-csv:2.10.0com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.10.0com.fasterxml.jackson.core:jackson-databind:2.10.0net.sf.jopt-simple:jopt-simple:5.0.4com.yammer.metrics:metrics-core:2.2.0com.typesafe.scala-logging:scala-logging_2.12:3.9.0org.scala-lang:scala-reflect:2.12.8org.scala-lang:scala-library:2.12.10com.101tec:zkclient:0.11org.apache.zookeeper:zookeeper:3.4.14org.slf4j:slf4j-api:1.7.26com.github.luben:zstd-jni:1.4.0-1org.lz4:lz4-java:1.6.0org.xerial.snappy:snappy-java:1.1.7.3com.fasterxml.jackson.module:jackson-module-paranamer:2.10.0com.fasterxml.jackson.core:jackson-annotations:2.10.0com.fasterxml.jackson.core:jackson-core:2.10.0com.github.spotbugs:spotbugs-annotations:3.1.9org.apache.yetus:audience-annotations:0.5.0com.thoughtworks.paranamer:paranamer:2.8org.apache.kafka:kafka-log4j-appender:2.3.1org.apache.kafka:kafka-streams:2.3.1org.apache.kafka:connect-json:2.3.1org.rocksdb:rocksdbjni:5.18.3org.apache.kafka:connect-api:2.3.1org.codehaus.mojo:animal-sniffer-annotations:1.17io.projectreactor:reactor-core:3.3.0.RELEASEorg.reactivestreams:reactive-streams:1.0.3org.jvnet.staxex:stax-ex:1.8.2io.rsocket:rsocket-transport-netty:0.12.2-RC4io.rsocket:rsocket-core:0.12.2-RC4io.projectreactor.netty:reactor-netty:0.8.8.RELEASEorg.jooq:jooq:3.12.3com.zaxxer:HikariCP:3.4.1io.dropwizard:dropwizard-db:1.3.16org.apache.tomcat:tomcat-jdbc:9.0.27io.dropwizard:dropwizard-util:1.3.16io.dropwizard:dropwizard-validation:1.3.16io.dropwizard:dropwizard-lifecycle:1.3.16org.reactivestreams:reactive-streams:1.0.2javax.xml.bind:jaxb-api:2.3.0org.apache.tomcat:tomcat-juli:9.0.27com.fasterxml.jackson.core:jackson-annotations:2.9.10joda-time:joda-time:2.10.1org.hibernate:hibernate-validator:5.4.3.Finalorg.glassfish:javax.el:3.0.0org.javassist:javassist:3.24.1-GAjavax.validation:validation-api:1.1.0.Finalorg.jboss.logging:jboss-logging:3.3.0.Finalcom.fasterxml:classmate:1.3.1org.zeroturnaround:zt-exec:1.11org.tarantool:connector:1.9.2org.apache.logging.log4j:log4j-iostreams:2.12.1io.pebbletemplates:pebble:3.1.0org.unbescape:unbescape:1.1.6.RELEASE
LICENSE
ART Java
Copyright 2019 ART
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
