Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fosskers/fosskers.ca
My personal site.
https://github.com/fosskers/fosskers.ca
blog haskell rss rust
Last synced: 7 days ago
JSON representation
My personal site.
- Host: GitHub
- URL: https://github.com/fosskers/fosskers.ca
- Owner: fosskers
- License: bsd-3-clause
- Created: 2018-01-25T04:42:34.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-09-08T20:50:26.000Z (2 months ago)
- Last Synced: 2024-09-08T21:58:17.465Z (2 months ago)
- Topics: blog, haskell, rss, rust
- Language: JavaScript
- Homepage: https://www.fosskers.ca
- Size: 17.9 MB
- Stars: 10
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
#+TITLE: fosskers.ca
[[https://github.com/fosskers/fosskers.ca/workflows/Haskell/badge.svg]]
This is the repo for my personal website. It serves static HTML pages from a
Haskell backend built with [[http://hackage.haskell.org/package/servant][servant]], [[http://hackage.haskell.org/package/lucid][lucid]], and [[http://hackage.haskell.org/package/org-mode][org-mode]].* Table of Contents :TOC_4_gh:noexport:
- [[#english][English]]
- [[#blog-posts][Blog Posts]]
- [[#how-do-they-work][How do they work?]]
- [[#how-can-i-edit-one][How can I edit one?]]
- [[#deployment][Deployment]]
- [[#日本語][日本語]]
- [[#ブログ][ブログ]]
- [[#ブログの仕組みは][ブログの仕組みは?]]
- [[#編集の仕方は][編集の仕方は?]]
- [[#デプロイメント][デプロイメント]]* English
** Blog Posts
*** How do they work?
All the blog posts are written in the [[https://orgmode.org/][Emacs Org Mode]] format. Upon startup, the
server reads all ~.org~ files in the ~blog/~ directory and parsers them via my
[[http://hackage.haskell.org/package/org-mode][org-mode]] library. The parsed results are fed into [[http://hackage.haskell.org/package/org-mode-lucid][org-mode-lucid]] and stored in
the server's runtime environment. Whenever a request for a blog post is made,
one of these stored ~Html ()~ structures is injected into the template for the
rest of the page and then served.*** How can I edit one?
Simple edit one of the ~.org~ files in the ~blog/~ directory, and the next time
the site is deployed, your changes will be included.** Deployment
The website is hosted on Heroku, and is deployed automatically upon every merge
to this repository's ~master~ branch. [[https://www.fosskers.ca/en/blog/deploying-haskell][This blog post]] of mine explains the
details.* 日本語
** ブログ
*** ブログの仕組みは?
そのサイトの全てのブログは [[https://orgmode.org/][EmacsのOrg Mode]] フォーマットで書かれています。サーバー
が起動する時、ブログファイルが全部読まれ、私の書いた [[http://hackage.haskell.org/package/org-mode][org-mode]] ライブラリによって
パースされ、サーバーの実行環境で保存されます。サイトにブログのリクエストが入ると、
パースされた内容がページに投入され普通のHTMLとしてユーザーに返却されます。*** 編集の仕方は?
~blog/~ にある ~.org~ ファイルを編集し、サイトが次にデプロイされる際にブログの新
しい内容や変更は自動的に含まれます。** デプロイメント
このサイトは Heroku でホストされています。本レポジトリの ~master~ が更新される度
にサイトが自動的にデプロイされます。詳しくは [[https://www.fosskers.ca/jp/blog/deploying-haskell][このブログ]] で説明されています。