This commit is contained in:
2026-06-28 22:01:21 +09:00
parent 4020a91aa0
commit 8ee766722e
24 changed files with 1657 additions and 41 deletions
@@ -0,0 +1,79 @@
---
source_url: https://baku89.com/Principles_for_Digital_Gardening
ingested: 2026-06-28
sha256: 656891bdf705ed48f7c1a453065d9cb00c48ff1e0d2767d7ecef38c1a28b7a9f
---
I want to consolidate all of my notes and portfolio into a single homepage by the end of 2025.
From there, I’m thinking through a set of principles to implement [Digital Gardening](https://baku89.com/Digital_Gardening) in some sort of CMS system much more concretely.
### Principles and Their Design Implications
- **Don’t trust classification -- 分類を信じない**
- Place all pages directly under the root
- Don’t distinguish between content and taxonomy.
- “Linking to A” ⇔ “Belongs to A” is treated as equivalent
- Use a single post type.
- Instead of creating distinct post types like `author` and `news` with
- Abandon the idea of completion -- [完成概念](https://baku89.com/%E5%AE%8C%E6%88%90%E6%A6%82%E5%BF%B5) を捨てる
- Pages are to be continually updated.
- Avoid using chronological timelines unless explicitly written as a diary
- **Make it permanent -- 永続的にする**
- Trust plain text.
- HTML or Markdown will likely outlast proprietrary services like Newt or MicroCMS, even if they allow much richer and intuitive experience for writing
- Make it [Wayback-Machine-friendly](https://baku89.com/Wayback-Machine-friendly).
- SEOのためではなく、Wayback Machneに適切にクロールされるためにServer-Side Generationする
- Secure a domain at least for a decade.
- Ensure URLs remain persistent.
### Page Status
- `published: true`: パーマリンクが固定され、バージョン管理がなされている状態。引用することができる
- 論文における `In Proceedings` の概念。一度掲載されたものは、DOIが付与され、内容が改ざんされることなく、本人の意志を問わず永続的に公開され続ける
- `published: false`: 公開されず、書いた本人にしか見れない
- `draft`: 無責任なメモ書き。デフォルトの状態。公開されてはいるが、随時内容が変わる可能性があり、かつアーカイブもされない
とすると `published | draft | private` のほうが良くない?
### Page Visibility Settings
- `sage`: 一覧表示はされないが、リンクをたどることで到達することは出来る
- `unlisted`: URLを知らない人にしか見れないページ。URL末尾にパスワード代わりのハッシュが付く。 `baku89.com/the-post-name/aif9d38xe21` のように
- `protected`: GitHub Sponsor, Patoreon等、何らかのメンバーシップによる認証を必須とする
- パスワード付きのページは要らない。
```ts
type PageAttribute = {
title: string | { ja?: string; en?: string };
date: string;
published: boolean;
draft: boolean;
restrict: "sage" | "unlisted" | "protected";
};
```
![](https://www.youtube.com/watch?v=fY2sfrV2zho)
メモとWikiとCMSを兼ね備えたデジタル [庭](https://baku89.com/%E5%BA%AD) を今年中に整えたい
- **欲しい**
- ObsidianのようなLocal-first性
- CosenseのようなCRDTベース?の共同編集( あまり必須じゃない )
- Nuxt ContentのようなMarkdown + 拡張構文(MDC)
- **どうしたい?**
- 現状のポートフォリオなどのコンテンツを全部そっちに移す
- 画像やCVなどもそちらに
### 実装
- Wordpress + WPGraphQL
- Xserverで(あんまり褒められた使い方じゃないけど)Node.js/Nitroを走らせる
- [HyperMD](https://baku89.com/HyperMD) を使う?
- Milkdown looks much more modern and still maintained
### メモ
Nuxt Contentの [queryContent()](https://content.nuxt.com/composables/query-content) あたりで、REST APIらしきものは実装できる
Vault全体をgitで管理するのもいいが、そうなるとモバイルでの編集性が悪くなる
[**GitHub - vrtmrz/obsidian-livesync** *Contribute to vrtmrz/obsidian-livesync development by creating an account on GitHub.* *github.com*](https://github.com/vrtmrz/obsidian-livesync?tab=readme-ov-file)
- Parsing Obsidian-specific syntax in Nuxt Content
- [https://www.codybontecou.com/nuxt-content-and-obsidian-links](https://www.codybontecou.com/nuxt-content-and-obsidian-links)