https://github.com/yogthos/graal-web-app-example
example web application using HTTP Kit and Reitit compiled with GraalVM
https://github.com/yogthos/graal-web-app-example
Last synced: 9 months ago
JSON representation
example web application using HTTP Kit and Reitit compiled with GraalVM
- Host: GitHub
- URL: https://github.com/yogthos/graal-web-app-example
- Owner: yogthos
- License: mit
- Created: 2019-05-13T23:56:11.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-12-17T17:51:41.000Z (about 4 years ago)
- Last Synced: 2025-03-28T10:54:08.750Z (10 months ago)
- Language: Clojure
- Size: 19.5 KB
- Stars: 125
- Watchers: 3
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A minimal GraalVM Clojure web application:
* Environment: [yogthos/config](https://github.com/yogthos/config)
* HTTP Server: [HTTP Kit](https://github.com/http-kit/http-kit)
* HTML templating: [Hiccup](https://github.com/weavejester/hiccup)
* Resource management: [Mount](https://github.com/tolitius/mount)
* Routing: [Reitit](https://metosin.github.io/reitit/)
### [Postgres with `clojure.java.jdbc`](https://github.com/yogthos/graal-web-app-example/tree/postgres)
### [Authentication and Sessions](https://github.com/yogthos/graal-web-app-example/tree/auth)
## Requirements
* [GraalVM](https://github.com/oracle/graal/releases)
* [Leiningen](https://leiningen.org/)
## Usage
The HTTP port for the application is declared in the `config.edn` file:
```clojure
{:port 3000}
```
Run in dev mode:
lein run
Start the nREPL
lein nrepl
Compile native binary by running:
lein native-image
run the app:
target/app