Alexandrie — オフラインモードと人が読みやすいMarkdownに対応した、自前のサーバー可用なナレッジベース

ナレッジベースの永遠のジレンマは、クラウドとローカルファイルの選択に集約されます。一方ではNotionやConfluenceのようにチームアクセスの設定が便利ですが、データは他社のサーバーに置かれます。他方ではObsidianのようにすべてが純粋なMarkdownで保存されますが、同期とコラボレーションはすぐにプラグイン設定や回避策になってしまいます。
最近、Alexandrieプロジェクトに出会いました。著者は、チームWikiの親しみやすいWebインターフェース、自ホストソリューションの独立性、オフラインアクセスを組み合わせようとしています。単一のコマンドで自前のサーバーにデプロイできる興味深いツールであることがわかりました。
プロジェクトの中身
Alexandrieは、フロントエンドにVue/Nuxt、バックエンドにGoを使用しています。PWA(プログレッシブWebアプリ)としてスタイルされたフル機能のWebアプリケーションです。デスクトップや電話でインストールして、インターネット接続なしでノートを開き続けることができます。
コアには、技術文書用に強化されたCodeMirror 6が使用されています。

このエディタには、標準的なWikiにはしばしば欠けているいくつかの優れた機能があります:
- テキスト内にLaTeX数式サポートと組み込みのダイアグラムビルダー。
- ソースとプレビューの同期スクロール。
- Web Speech APIによる音声入力で、すばやく考えを口述。
- 繰り返しのAPI説明やバグ報告テンプレートの挿入を迅速に行うスニペットマネージャー。
ワークスペース構造とアクセス権
チームコラボレーションのために、明確な階層構造があります。スペースはチーム、ワークスペース、カテゴリ、ネストされたドキュメントに分割されます。

パーミッションシステムでは5つのレベルが設定可能です:なし、閲覧、編集、管理者、所有者の各権限を持つことができます。特定のドキュメントブランチへの読み取り専用アクセスを付与したり、一意の公開リンクで外部にページをシェアしたりできます。
企業環境向けに、OIDCによるSSO統合が含まれています。そのため、KeycloakやAuthentikへの認証連携も問題ありません。
検索とワークフロー管理
ナレッジベースの検索は通常、遅いか、別のElasticsearchクラスターが必要です。Alexandrieには、検索結果のハイライトと関連性ランキングを備えた組み込みの全文検索インデックスがあります。

Ctrl + Kを押すと、コマンパレットが開きます。そこから、ページ間の移動、クイックアクションの実行、マウスに触れずにコンテキストの切り替えができます。

各ワークスペースにはカンバンボードも組み込まれています。仕様書や技術文書と一緒に小さなタスクトラッカーを実行する必要がある場合に便利で、サードパーティのトラッカーに切り替える必要がありません。
ファイルストレージとバックアップ
画像、ビデオ、添付ファイルはデータベースを肥大化させません。アプリケーションは、MinIO、Garage、RustFS、クラウドプロバイダーを問わず、S3互換ストレージと連携できます。

インターフェースには、組み込みのPDFビューアーを含む30のメディアファイル形式用の組み込みビューアーが含まれています。
エクスポートも簡単です:いつでも、すべてのドキュメントとメタデータを含むアーカイブをZIPとしてダウンロードしたり、そのアーカイブからシステム状態を復元したりできます。プロプライエタリ形式へのロックインはなく、通常のファイルとして出力されます。
起動方法
スタック全体は、ものの数分でDocker Compose経由でデプロイできます。
# 1. Скачиваем конфиги
curl https://raw.githubusercontent.com/Smaug6739/Alexandrie/main/.env.example -O .env.example
curl https://raw.githubusercontent.com/Smaug6739/Alexandrie/main/docker-compose.yml -O docker-compose.yml
# 2. Создаем файл переменных окружения
cp .env.example .env
# 3. Запускаем контейнеры
docker compose up -d
起動後、インターフェースは http://localhost:8200 で利用可能になり、最初のセットアップウィザードが所有者アカウントの作成を求めます。
このプロジェクトの対象者
開発チーム用の内部ナレッジベースやホームサーバーの個人的なメモアーカイブが必要な場合、Alexandrieは堅実な候補です。Confluenceの肥大化やNotionのクラウド依存がありません。
もちろん、このプロジェクトは確立された巨人たちよりも若く、コミュニティはまだ小規模です。しかし、 готовый Dockerイメージ、オフラインアクセス対応のPWA、S3サポートの組み合わせにより、データの管理を重視する人々にとって便利なツールです。
関連プロジェクト