Initial commit: chaosmith-site with blog

Static landing page + markdown blog served by Go.
Goldmark renders posts in-memory, no database.
Dockerfile + compose for podman deployment.

👾 Generated with [Letta Code](https://letta.com)

Co-Authored-By: Letta Code <noreply@letta.com>
This commit is contained in:
2026-06-24 14:58:29 +03:00
commit c2e58aa9d7
12 changed files with 879 additions and 0 deletions

26
main.go Normal file
View File

@@ -0,0 +1,26 @@
package main
import (
"log"
"net/http"
"chaosmith-site/blog"
)
func main() {
mux := http.NewServeMux()
mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
http.ServeFile(w, r, "index.html")
})
mux.HandleFunc("/ABSTRACTS.png", func(w http.ResponseWriter, r *http.Request) {
http.ServeFile(w, r, "ABSTRACTS.png")
})
mux.Handle("/src/", http.StripPrefix("/src/", http.FileServer(http.Dir("src"))))
if err := blog.RegisterRoutes(mux, "content/posts"); err != nil {
log.Fatalf("blog: %v", err)
}
log.Println("listening on :8000")
http.ListenAndServe(":8000", mux)
}