Build a small REST API in Java without pulling in Spring or another heavy framework.
Add JWT-based login and authenticated routes to a Java service using built-in annotations.
Get structured request and error logging out of the box for debugging a Java HTTP service.
| strsitemas/fastjava | abhishek-kumar09/configurate | abhishek-kumar09/orekit | |
|---|---|---|---|
| Stars | 0 | — | — |
| Language | Java | Java | Java |
| Last pushed | — | 2020-09-30 | 2020-11-15 |
| Maintenance | — | Dormant | Dormant |
| Setup difficulty | easy | easy | moderate |
| Complexity | 2/5 | 2/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires Java 17+ and Maven, the README is written mostly in Portuguese.
FastJava is a lightweight framework for building REST APIs in Java, made by STR Software Co. It does not depend on Spring or any other large application container. All you need is Java 17 or newer and a single jar file to start a working HTTP server, and the project states the server can start in under one second. The framework uses annotations to keep code short. You mark a class as a controller, mark methods with the HTTP verb they handle such as GET, POST, PUT, or DELETE, and pull values out of the request using annotations for path parameters, query parameters, request bodies, and headers. A simple dependency injection system lets you mark classes as services and inject them into controllers automatically. Built in JWT support handles generating and checking authentication tokens using HMAC-SHA256, and an authenticated annotation on a method automatically extracts the caller's claims from the token. The framework also defines its own exception types for common HTTP errors like not found, unauthorized, forbidden, and bad request, so you can throw an exception and get the right status code back. Structured logging is built in as well, printing timestamp, log level, class name, and line number automatically whenever you call a log method, which makes it easier to trace what happened during a request. The framework also includes virtual thread support for concurrency and basic rate limiting to control how many requests a client can send. Starting a server is a few lines of code: create a FastJava instance, set a port, register your controller classes, and call start. The README includes a full README written mostly in Portuguese alongside example code in English.
FastJava is a lightweight, dependency-free Java REST framework with annotation routing, dependency injection, built-in JWT auth, and structured logging.
Mainly Java. The stack also includes Java, Java 17, Maven.
MIT license: use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.