46 lines
1.5 KiB
Org Mode
46 lines
1.5 KiB
Org Mode
#+title: ferano.io
|
|
#+options: toc:nil
|
|
|
|
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/~.
|