Add README

This commit is contained in:
Joseph Ferano 2026-06-13 12:05:45 +07:00
parent dbbe42411a
commit fb6b11dcc9

44
README.org Normal file
View File

@ -0,0 +1,44 @@
#+title: ferano.io
Static portfolio site. No framework — just Clojure generating HTML.
* Stack
- *Clojure + Hiccup* — generates all HTML in ~src/ferano_io/main.clj~
- *EDN* — all site data (projects, games, experiments, links) lives in ~resources/data.edn~
- *Tailwind CSS* — compiled from ~resources/input.css~ to ~build/static/output.css~
- *Org-mode* — blog posts written in ~org/~, compiled to HTML fragments by Emacs via ~build-org.el~
* Build
#+begin_src sh
make watch # tailwind + static assets + clj build (local dev)
make publish # full build + rsync to VPS
#+end_src
Individual targets:
| ~make build~ | ~clj -M:build~ — generates ~build/index.html~ and ~build/blog/*.html~ |
| ~make org~ | runs Emacs headless to compile ~org/*.org~ → ~org/output/*.html~ |
| ~make tailwind~ | compiles Tailwind CSS |
| ~make static~ | rsyncs ~resources/static/~ → ~build/static/~ |
* Dev (nREPL)
#+begin_src sh
clj -M:dev
#+end_src
Starts a CIDER-compatible nREPL. Sets ~-Ddev=true~ so the page loads Tailwind from CDN instead of the compiled file.
* Blog
Write ~org/YYYY-MM-DD-slug.org~ files. ~make org~ (or ~make build~, which calls it) converts them to body-only HTML fragments, then ~build-website~ wraps each one in the site template and writes it to ~build/blog/~.
* Publish
#+begin_src sh
make publish
#+end_src
Rsyncs ~build/~ to ~joe-vps:/home/josephferano/websites/ferano.io/~.