Experimental Netty-based Java 16 application/web framework

Related tags

Networking autumn
Overview

autumn

Experimental Netty-based application/web framework.

An example application can be seen here.

Should I use this?

Probably not! It's still incredibly early-stage -- everything's versioned at 0.0.1 for a reason, after all~ -- and so there's all sorts of instabilities, weirdness, etc. that you probably don't want to deal with.

Components

  • autumn-example: Example application.
  • autumn-application: Application bootstrap.
  • autumn-config: HJSON-based configuration.
  • autumn-di: Dependency injection framework.
  • autumn-data: Database access layer.
  • autumn-json: JSON helper library.
  • autumn-web: Web framework.

What does work

  • JVM boot to usable API in ~500ms
  • Runs with 32MB of heap RAM or less
  • Runtime DI + modularisation via components
  • Component dependencies
  • JSON
  • Web server
  • HJSON-based autoconfig
  • Object-mapping database manipulation via PostgreSQL JSONB.

What doesn't work

  • Multipart
  • Websockets
  • HTTP/2 (dealing with SSL is a hairy problem)
  • Globbing routes

Build an API in 30 seconds

public class Readme {
    public static void main(String[] args) {
        AutumnApplication.run();
    }

    @Route(method = HttpMethod.GET, path = "/hello/:name")
    public Response hello(Request req) {
        return Response.create().body("henlo " + req.params().get("name") + '!');
    }
}

Modularise with components

@Component
public class HelloComponent {
    public String sayHello(String name) {
        return "henlo " + name + "!";
    }
}

public class Readme {
    @Inject
    private HelloComponent hello;

    public static void main(String[] args) {
        AutumnApplication.run();
    }

    @Route(method = HttpMethod.GET, path = "/hello/:name")
    public Response hello(Request req) {
        return Response.create().body(hello.sayHello(req.params().get("name")));
    }
}

Singleton components for ex. databases

@Component
@Singleton
public class SingletonComponent {
    public String sayHello(String name) {
        return "henlo " + name + "!";
    }
}

public class Readme {
    @Inject
    private SingletonComponent singleton;

    public static void main(String[] args) {
        AutumnApplication.run();
    }

    @Route(method = HttpMethod.GET, path = "/hello/:name")
    public Response hello(Request req) {
        return Response.create().body(singleton.sayHello(req.params().get("name")));
    }
}
Comments
  • build(deps): bump value from 2.9.2 to 2.9.3

    build(deps): bump value from 2.9.2 to 2.9.3

    Bumps value from 2.9.2 to 2.9.3.

    Release notes

    Sourced from value's releases.

    2.9.3

    Maintenance release

    What's Changed

    New Contributors

    Full Changelog: https://github.com/immutables/immutables/compare/2.9.2...2.9.3

    Commits
    • 6e19203 hm security fix?
    • c8f4dae 2.9.3
    • 7c0a178 Revert "update org.apache.geode:geode-core 1.9.0 to 1.15.0 (#1414)" (#1419)
    • 9f16541 update org.apache.geode:geode-core 1.9.0 to 1.15.0 (#1414)
    • b511f4e Fix counts for upsert operation
    • 729f330 Propagate WriteResult(s) (like update and delete counts) from Mongo backend t...
    • 29bca65 fixing #1407 - Default value with explicit null should use default. (#1410)
    • c3344b5 Avoid invalidating Gson type adapter cache when creating Mongo Repository (#1...
    • e264c39 Merge pull request #1409 from immutables/1408-with-unary-operator
    • 2feeede builder cosmetics
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • Bump netty-all from 4.1.67.Final to 4.1.68.Final

    Bump netty-all from 4.1.67.Final to 4.1.68.Final

    Bumps netty-all from 4.1.67.Final to 4.1.68.Final.

    Commits
    • 7d34282 [maven-release-plugin] prepare release netty-4.1.68.Final
    • a0c9b2f Fix netty-tcnative* entries in bom
    • 6da4956 Merge pull request from GHSA-9vjp-v76f-g363
    • 41d3d61 Merge pull request from GHSA-grg4-wf29-r9vv
    • deb0489 Respect jdk.tls.namedGroups when using native SSL implementation (#11660)
    • f2de2bb Add support for mac m1 (#11666)
    • a53eb80 Throw exceptions when rule violating UDS paths been passed in. (#11663)
    • a329857 Updated "CipherSuitesConverter" to make it public. (#11656)
    • 21fb48e Deprecate UnaryPromiseNotifier (#11653)
    • 37c03cc Include number of maximum active streams in exception message (#11644)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • Bump netty-all from 4.1.63.Final to 4.1.65.Final

    Bump netty-all from 4.1.63.Final to 4.1.65.Final

    Bumps netty-all from 4.1.63.Final to 4.1.65.Final.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • build(deps): bump classgraph from 4.8.152 to 4.8.153

    build(deps): bump classgraph from 4.8.152 to 4.8.153

    Bumps classgraph from 4.8.152 to 4.8.153.

    Release notes

    Sourced from classgraph's releases.

    classgraph-4.8.153

    • Added ClassInfo#getSourceFile() (thanks to @​freya022 for pull request #740 with the complete implementation).
    • Added getTypeAnnotationInfo() to TypeParameter and TypeArgument (#741, thanks to @​platosha for pull request #742 with the complete implementation).
    • Fixed a ClassCastException introduced in the previous release (#705, thanks to @​devlauer for reporting this).
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump slf4j-api from 2.0.5 to 2.0.6

    build(deps): bump slf4j-api from 2.0.5 to 2.0.6

    Bumps slf4j-api from 2.0.5 to 2.0.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump netty-all from 4.1.85.Final to 4.1.86.Final

    build(deps): bump netty-all from 4.1.85.Final to 4.1.86.Final

    Bumps netty-all from 4.1.85.Final to 4.1.86.Final.

    Commits
    • cde0e2d [maven-release-plugin] prepare release netty-4.1.86.Final
    • fe18adf Merge pull request from GHSA-hh82-3pmq-7frp
    • cd91cf3 Merge pull request from GHSA-fx2c-96vj-985v
    • 7cc8428 fixing some naming and typos that caused wrong value to be updated (#13031)
    • 22d3151 Save promises type pollution due to interface type checks (#12980)
    • 1baf9ef Enable SocketHalfClosedTest for epoll (#13025)
    • 91527ff Correctly handle unresolvable InetSocketAddress when using DatagramChannel (#...
    • b64a6e2 Revert#12888 for potential scheduling problems (#13021)
    • 3bff0be Replace LinkedList with ArrayList (#13016)
    • d24defc WebSocketClientHandshaker: add public accessors for parameters (#13009)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump classgraph from 4.8.151 to 4.8.152

    build(deps): bump classgraph from 4.8.151 to 4.8.152

    Bumps classgraph from 4.8.151 to 4.8.152.

    Release notes

    Sourced from classgraph's releases.

    classgraph-4.8.152

    Another fix for Windows UNC paths (#736, thanks to @​jdeppe-pivotal for the report and the fix).

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump slf4j-api from 2.0.4 to 2.0.5

    build(deps): bump slf4j-api from 2.0.4 to 2.0.5

    Bumps slf4j-api from 2.0.4 to 2.0.5.

    Commits
    • 7e62e1e prepare release 2.0.5
    • d250ad7 in jcl-over-slf4j rename LICENSE.TXT as LICENSE, add LICENSE file to log4j-ov...
    • 3bc58f3 add SecurityManager support
    • 207bb29 start work on 2.0.5-SNAPSHOT
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump postgresql from 42.5.0 to 42.5.1

    build(deps): bump postgresql from 42.5.0 to 42.5.1

    Bumps postgresql from 42.5.0 to 42.5.1.

    Changelog

    Sourced from postgresql's changelog.

    Changelog

    Notable changes since version 42.0.0, read the complete History of Changes.

    The format is based on Keep a Changelog.

    [Unreleased]

    Changed

    Added

    Fixed

    [42.5.1] (2022-11-21 15:21:59 -0500)

    Security

    • security: StreamWrapper spills to disk if setText, or setBytea sends very large Strings or arrays to the server. createTempFile creates a file which can be read by other users on unix like systems (Not macos). This has been fixed in this version fixes CVE-2022-41946 see the security advisory for more details. Reported by Jonathan Leitschuh This has been fixed in versions 42.5.1, 42.4.3 42.3.8, 42.2.27.jre7. Note there is no fix for 42.2.26.jre6. See the security advisory for work arounds.

    Fixed

    Commits
    • 9008dc9 Merge pull request from GHSA-562r-vg33-8x8h
    • 135be5a chore: bump Checkstyle to 9.3
    • 1d7465a chore: bump Gradle to 7.5.1
    • 4743ccf minor: Update the LeftCurly according to the updation in checkstyle
    • d5ed52e chore: add .git-blame-ignore-revst to hide reformatting commits from GitHub b...
    • 98c04a0 exclude ArrayTest versions less than 9.1 (#2645)
    • 9f90de9 revert change to PGProperty.get() to keep the API the same (#2644)
    • ee06e22 Feature/urlparser improve3 pr1 (#2641)
    • 56a487c fix: binary decoding of bool values (#2640)
    • b738991 remove javadoc links for java 17 and above (#2637)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps): bump jackson.version from 2.14.0 to 2.14.1

    build(deps): bump jackson.version from 2.14.0 to 2.14.1

    Bumps jackson.version from 2.14.0 to 2.14.1. Updates jackson-core from 2.14.0 to 2.14.1

    Commits
    • 2be384b [maven-release-plugin] prepare release jackson-core-2.14.1
    • dd0b3b6 Prepare for 2.14.1 release
    • ede8519 Rearrange README a bit
    • ccd23d5 Add JDK and Android compatibility sections on README
    • 8108879 Correct Android SDK compatibility statement in pom.xml
    • af41fe5 Merge branch '2.13' into 2.14
    • 2faf10b Fix #838: Add Android SDK compatibility check with AnimalSniffer (#841)
    • c1f5462 Fix #838: Add Android SDK compatibility check with AnimalSniffer (#841)
    • a615ffe Backport release note update
    • 006bdab Fix previous commit on wrong branch :)
    • Additional commits viewable in compare view

    Updates jackson-databind from 2.14.0 to 2.14.1

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • build(deps-dev): bump logback-classic from 1.4.4 to 1.4.5

    build(deps-dev): bump logback-classic from 1.4.4 to 1.4.5

    Bumps logback-classic from 1.4.4 to 1.4.5.

    Commits
    • 34a6efc preparfe release 1.4.5
    • 0d3ac63 fix LOGBACK-1698, [Nested appenders are not allowed] warning using SiftingApp...
    • a64b8d4 make jakarta.servlet-api as both provided and optional
    • 114b3de bump slf4j version
    • 1df6662 fix LOGBACK-1706
    • ea165fb fix LOGBACK-1703
    • 9e07bd0 fix LOGBACK-1703
    • a871e9f minor edits in README.md
    • 7dc0ce5 Merge pull request #605 from Zardoz89/patch-1
    • 7130dfe README.md MUST inform about Java & Jackarta EE support
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
Owner
amy null
i write software. when i'm lucky, it even works! why are you reading this? ex @railwayapp @GetThru
amy null
An netty based asynchronous socket library for benchion java applications

Benchion Sockets Library An netty based asynchronous socket library for benchion java applications ?? Documents ?? Report Bug · Request Feature Conten

Fitchle 3 Dec 25, 2022
LINE 4.1k Dec 31, 2022
Intra is an experimental tool that allows you to test new DNS-over-HTTPS services that encrypt domain name lookups and prevent manipulation by your network

Intra Intra is an experimental tool that allows you to test new DNS-over-HTTPS services that encrypt domain name lookups and prevent manipulation by y

Jigsaw 1.2k Jan 1, 2023
IoT Platform, Device management, data collection, processing and visualization, multi protocol, rule engine, netty mqtt client

GIoT GIoT: GIoT是一个开源的IoT平台,支持设备管理、物模型,产品、设备管理、规则引擎、多种存储、多sink、多协议(http、mqtt、tcp,自定义协议)、多租户管理等等,提供插件化开发 Documentation Quick Start Module -> giot-starte

gerry 34 Sep 13, 2022
Simple & Lightweight Netty packet library + event system

Minimalistic Netty-Packet library Create packets with ease Bind events to packets Example Packet: public class TestPacket extends Packet { privat

Pierre Maurice Schwang 17 Dec 7, 2022
Nifty is an implementation of Thrift clients and servers on Netty

his project is archived and no longer maintained. At the time of archiving, open issues and pull requests were clo

Meta Archive 902 Sep 9, 2022
Unconventional Java code for building web servers / services without a framework.

Unconventional Java code for building web servers / services without a framework. Think dropwizard but as a seed project instead of a framework. If this project had a theme it would be break the rules but be mindful of your decisions.

StubbornJava 227 Nov 15, 2022
Apache Dubbo is a high-performance, java based, open source RPC framework.

Apache Dubbo Project Apache Dubbo is a high-performance, Java-based open-source RPC framework. Please visit official site for quick start and document

The Apache Software Foundation 38.2k Dec 31, 2022
jRT measures the response time of a java application to socket-based requests

jRT Version: 0.0.1 jRT is a instrumentation tool that logs and records networking I/O operations "response times" (applicaion response time if be corr

null 45 May 19, 2022
A networking framework that evolves with your application

ServiceTalk ServiceTalk is a JVM network application framework with APIs tailored to specific protocols (e.g. HTTP/1.x, HTTP/2.x, etc…) and supports m

Apple 805 Dec 30, 2022
Apache MINA is a network application framework which helps users

Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily

The Apache Software Foundation 846 Dec 20, 2022
Book Finder application is a client-server application (gRPC) for educational purposes.

Book-Finder Book Finder application is a client-server application (gRPC) for educational purposes. Instalation These projects (Client/Server) are Mav

Mihai-Lucian Rîtan 21 Oct 27, 2022
This is an open source android based Music Player application developed in Android Studio

Pulse Music An offline music player android app, with modern UI and powerful features If you liked this repo, fork it and leave a STAR. Your support m

Sharath 7 Apr 11, 2022
Microhttp - a fast, scalable, event-driven, self-contained Java web server

Microhttp is a fast, scalable, event-driven, self-contained Java web server that is small enough for a programmer to understand and reason about.

Elliot Barlas 450 Dec 23, 2022
Fibers and actors for web development

COMSAT Scalable, Concurrent Web Apps Getting started Add the following Maven/Gradle dependencies: Feature Artifact Servlet integration for defining fi

Parallel Universe 600 Dec 23, 2022
SCG used as as proxy to connect gRPC-Web and back end gRPC services

gRPC-Web Spring Cloud Gateway Spring Cloud Gateway 3.1.1 supports for gRPC and HTTP/2. It is possible to use Spring Cloud Gateway to connect gRPC-Web

null 1 Apr 4, 2022
Socket.IO server implemented on Java. Realtime java framework

Netty-socketio Overview This project is an open-source Java implementation of Socket.IO server. Based on Netty server framework. Checkout Demo project

Nikita Koksharov 6k Dec 30, 2022
Telegram API Client and Telegram BOT API Library and Framework in Pure java.

Javagram Telegram API Client and Telegram Bot API library and framework in pure Java. Hello Telegram You can use Javagram for both Telegram API Client

Java For Everything 3 Oct 17, 2021
The Java gRPC implementation. HTTP/2 based RPC

gRPC-Java - An RPC library and framework gRPC-Java works with JDK 7. gRPC-Java clients are supported on Android API levels 16 and up (Jelly Bean and l

grpc 10.2k Jan 1, 2023