diff options
| author | Elias Haugsbakk <[email protected]> | 2026-07-01 14:05:14 +0200 |
|---|---|---|
| committer | Elias Haugsbakk <[email protected]> | 2026-07-01 14:05:14 +0200 |
| commit | c4da920843972b6571e978cdc9f9278eb87b7398 (patch) | |
| tree | f972778f7cab4e4b231f5adc7450d590fa6d0fae /clams-server/src/main/java/no | |
| parent | 5ed99f3c87f0337ffac03dd1e45073fbc7f63b68 (diff) | |
add HTML, CSS and basic routing
Diffstat (limited to 'clams-server/src/main/java/no')
| -rw-r--r-- | clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java | 16 | ||||
| -rw-r--r-- | clams-server/src/main/java/no/eliashaugsbakk/clams/server/controller/BlogController.java | 21 |
2 files changed, 36 insertions, 1 deletions
diff --git a/clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java b/clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java index 62c1677..200d23d 100644 --- a/clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java +++ b/clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java @@ -1,11 +1,25 @@ package no.eliashaugsbakk.clams.server; import io.javalin.Javalin; +import io.javalin.rendering.template.JavalinPebble; +import no.eliashaugsbakk.clams.server.controller.BlogController; public class Main { void main() { + BlogController blogController = new BlogController(); + var app = Javalin.create(config -> { - config.routes.get("/", ctx -> ctx.result("Hello World")); + config.staticFiles.add("/public"); + config.fileRenderer(new JavalinPebble()); + + config.routes.error(404, ctx -> ctx.render("templates/404.html")); + + config.routes.get("/", ctx -> ctx.redirect("/home")); + config.routes.get("/home", ctx -> ctx.render("templates/home.html")); + config.routes.get("/projects", ctx -> ctx.render("templates/projects.html")); + + config.routes.get("/blog/{slug}", blogController::handleGetPost); + config.routes.get("/blog", blogController::handleGetOverview); }).start(7070); } } diff --git a/clams-server/src/main/java/no/eliashaugsbakk/clams/server/controller/BlogController.java b/clams-server/src/main/java/no/eliashaugsbakk/clams/server/controller/BlogController.java new file mode 100644 index 0000000..d4fc9d3 --- /dev/null +++ b/clams-server/src/main/java/no/eliashaugsbakk/clams/server/controller/BlogController.java @@ -0,0 +1,21 @@ +package no.eliashaugsbakk.clams.server.controller; + +import io.javalin.http.Context; +import java.util.Map; + +public class BlogController { + public void handleGetPost(Context ctx) { + ctx.render("templates/post.html", + Map.of("title", "place holder Title", + "published_date", "place holder Release Date", + "author", "place holder Author", + "content", "place holder Content")); + } + + public void handleGetOverview(Context ctx) { + ctx.render("templates/blog.html", Map.of( + "all_posts_by_year", "place holder for all posts", + "recent_posts", " place holder for recent posts" + )); + } +} |
