summaryrefslogtreecommitdiff
path: root/clams-server/src/main/java/no/eliashaugsbakk
diff options
context:
space:
mode:
authorElias Haugsbakk <[email protected]>2026-07-01 14:05:14 +0200
committerElias Haugsbakk <[email protected]>2026-07-01 14:05:14 +0200
commitc4da920843972b6571e978cdc9f9278eb87b7398 (patch)
treef972778f7cab4e4b231f5adc7450d590fa6d0fae /clams-server/src/main/java/no/eliashaugsbakk
parent5ed99f3c87f0337ffac03dd1e45073fbc7f63b68 (diff)
add HTML, CSS and basic routing
Diffstat (limited to 'clams-server/src/main/java/no/eliashaugsbakk')
-rw-r--r--clams-server/src/main/java/no/eliashaugsbakk/clams/server/Main.java16
-rw-r--r--clams-server/src/main/java/no/eliashaugsbakk/clams/server/controller/BlogController.java21
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"
+ ));
+ }
+}