もう探さない!【コント】「決断できない私」を変える、AFFiNEという名のオーダーメイドサラダ(ナレッジベース)


もう探さない!【コント】「決断できない私」を変える、AFFiNEという名のオーダーメイドサラダ(ナレッジベース)

toeverything/AFFiNE

2025-10-29

だって、NotionとかMiroみたいに「人気者」の影に隠れて、地道に努力してる感じが、まるで「夜食を我慢している私」みたいじゃないですか!でも、オープンソースでカスタマイズ可能って聞くと、ただの「低カロリー食品」じゃなくて、「自分で素材を選べるオーダーメイドのサラダ」みたいで、わくわくしますよね!

「AFFiNE」は、計画(Planning)、整理(Sorting)、作成(Creating)を一つにまとめた「次世代ナレッジベース」とのこと。ソフトウェアエンジニアとしては、開発プロセス全体を効率化するツールとして、まさに「代謝を上げる運動」のように活用できます!

役に立つ点

開発仕様書、設計ドキュメント、技術調査メモなどを一つのワークスペースに集約できます。まるで「栄養バランスの取れた定食」のように、どこに何があるか一目で分かります。

Markdownとビジュアルなキャンバス機能(Miro的な部分)をシームレスに切り替えられるので、「コードで構造化された設計図」と「ブレインストーミングの自由な図」を両方同時に管理できます。

「コント」 「あれ、あの設計書どこだっけ?Notion?Wiki?いや、あの付箋に書いたやつか!」と探しまわる「迷走する私」から卒業できます!

役に立つ点

タスク管理ボード(カンバン)、知識マップ、データベース機能を使って、プロジェクトの進捗や技術的な課題を整理できます。

オープンソースなので、例えばGitリポジトリと連携するプラグインを自作したり、「うちのチームに最適なタスク管理方法」にカスタマイズできます。

「コント」 「今日はタスクをやるぞ!」「...あれ、タスク多すぎて、どれから手を付けていいか分からず、結局ネットサーフィン」という「決断できない私」にサヨナラ!

役に立つ点

プライバシー重視でローカル環境での利用も可能。機密性の高いプロジェクトのドキュメントを、外部サービスに置きたくない場合に安心です。「誰にも見られない秘密のダイエット日誌」を持つような安心感です。

ソースコードが公開されているため、セキュリティ監査が容易で、必要な機能を自分で追加・修正できます。「自分の体質に合わせて運動メニューを組む」自由度があります。

「AFFiNE」は、主にデスクトップアプリ(Electron)として、またはセルフホストのWebアプリとして導入できます。ソフトウェアエンジニアなら、セルフホストやソースコードからのビルドに挑戦するのが「AFFiNE」の真価を体験する第一歩です。

最もエンジニア的な導入は、GitHubからソースコードをクローンして実行することです。

リポジトリのクローン

git clone https://github.com/toeverything/AFFiNE.git
cd AFFiNE

依存関係のインストール
(Node.jsとYarnが必要です)

yarn install

開発モードでの実行

yarn start
# または、プロダクションビルドの場合
# yarn build

これで、ローカル環境で「AFFiNE」が起動します。まるで「自前のジムを開く」ような感覚ですね!

「AFFiNE」はTypeScript/Reactで書かれているため、カスタム機能を追加するなら、この環境に慣れる必要があります。例えば、ドキュメントのヘッダーに現在のGitブランチ名を表示するカスタムウィジェットを考えてみましょう。

「AFFiNE」のAPIや拡張ポイントの具体的な情報は、公式ドキュメント(GitHubリポジトリ内やWebサイト)を確認する必要がありますが、ここでは概念的なカスタマイズの例を挙げます。

カスタムコンポーネントの概念的な例 (React/TypeScript風)

// 完全に概念的なサンプルです。実際のAFFiNEのAPIは異なります。
import React from 'react';
// AFFiNEが提供する可能性があるCore API
import { useCurrentWorkspace, registerWidget } from '@affine/core-api';

// カスタムウィジェットのコンポーネント
const GitBranchIndicator: React.FC = () => {
  // 現在のGitブランチ名を取得するカスタムフック(自作が必要)
  const { gitBranch } = useCustomGitHook(); 
  
  if (!gitBranch) {
    return <span style={{ color: 'gray' }}>Git情報なし</span>;
  }
  
  // ドキュメント上部に表示
  return (
    <div style={{ padding: '4px 8px', backgroundColor: '#e6f7ff', border: '1px solid #91d5ff', borderRadius: '4px' }}>
       **作業ブランチ:** `{gitBranch}`
    </div>
  );
};

// AFFiNEの拡張ポイントに登録
// このregisterWidget関数も仮のものです。
registerWidget('document-header-left', GitBranchIndicator);

「コント」 「既存のツールは私のニーズに合わない!」と文句を言う代わりに、「よし、私の理想の筋肉(機能)は自分で鍛え上げる!」と、拡張機能開発に挑戦する「意識の高い私」になりましょう!

さあ、この「AFFiNE」を導入して、あなたの開発プロセスも「無駄な脂肪(非効率)」を燃やし、「引き締まった筋肉(効率的なナレッジベース)」を手に入れましょう!


toeverything/AFFiNE




PDFという名の「金庫」を解錠せよ:opendataloader-pdfによる非構造化データの強奪計画

お前、PDFの扱いには苦労してるんだろ? 構造がぐちゃぐちゃで、機械が読み取ろうとすると文字化けしたり、表が壊れたり……。そんな『厄介な証拠』を綺麗に整理してくれる相棒、opendataloader-pdfについて教えてやるよ。こいつを使えば、PDFって名の『鉄壁の金庫』も、あっさり解錠できるぜ。」


あなたの音楽ライフが変わる!「th-ch/youtube-music」でYouTube Musicを使い倒せ!

もしもし、そこのあなた! 毎日毎日、スマホの小さな画面でYouTube Musicを聴いていませんか? Webブラウザでタブをいくつも開いて、PCの動作が重くなっていませんか?そんな「もったいない!」悩み、今日でぜーんぶ解決しちゃいましょう!


「整理・計画・効率化」の三拍子、Tandoor Recipesを使いこなそう

今回は、レシピ管理ツール「Tandoor Recipes」について、ソフトウェアエンジニアの視点からその魅力や活用方法を解説していきます。一言で言うと、レシピの管理、献立の計画、買い物リストの作成などを一括でできる多機能なウェブアプリケーションです。


パスワード管理に終止符を! Bitwarden/clientsの導入と活用

登場人物ルパン三世 最新技術に弱い天才泥棒。次元大介 寡黙で頼れる相棒。石川五右衛門 パスワードを毎回手打ちする律儀な剣士。銭形警部 フィッシング詐欺メールに引っかかりがちな捜査の鬼。場所 とあるアジト【コントの始まり】ルパン 「ようし、今夜のターゲットは世界銀行の機密データだぜ!次元、準備はいいか?」


「情報を探す時間」を消滅させるAIパートナー:MineContextの技術スタック(PythonによるRAGとElectron/ReactによるUX)

「落ち着け、相棒!見ろ、このキーワードだ. ..volcengine/MineContext、electron、react、python. ..そして『コンテキストアウェアなAIパートナー』だと!?これはただの事件じゃない、ソフトウェア開発における『生産性の殺人事件』だ!」


MarkdownとVue.jsで構築するモダンな開発者向けプレゼン環境

Slidev (slidevjs/slidev) は、開発者向けに設計されたプレゼンテーションスライド作成ツールです。一言で言えば、「Markdownを使ってVue. jsベースのリッチなスライドが作成できる」ツールです。なぜ、このSlidevがソフトウェアエンジニアにとって特に役立つのでしょうか?それは、普段の開発業務で使っている技術やワークフローをそのまま活かせるからです。


【煽り運転に注意】ウェブサイトをLLM対応データに変換する「Firecrawl」の活用術

mendableai/firecrawlは、ウェブサイト全体をLLM(大規模言語モデル)が扱いやすい形式に変換してくれる、とても便利なツールです。ウェブサイトの情報をLLMに学習させたり、リアルタイムで情報を取得して応答に組み込んだりしたい場合、通常は手動でデータを整形したり、複雑なスクレイピングコードを書く必要があります。しかし、Firecrawlを使うと、URLを指定するだけで、必要なデータを簡単に取得・加工できるんです。


Webエンジニア必見!ytDownloaderから学ぶ「動画解析とデータ処理」の実用的なアプローチ

恋がそうであるように、このツールとの出会いも、あなたのエンジニアライフを豊かにする可能性がありますよ!この「aandrew-me/ytDownloader」は、単なるダウンローダーというだけでなく、「Electron」「Node. js」「JavaScript」という、現代のフロントエンド・バックエンド技術を組み合わせた「デスクトップアプリケーション開発」の教材であり、ソリューションの塊です。


エンジニア向け firecrawl活用ガイド:LLMのためのデータ準備

AIモデルは、生のHTMLよりもクリーンで構造化されたデータを好む。しかし、ウェブサイトから情報を手動でコピー&ペーストするのは非効率的で、フォーマットもバラバラになる。そこで登場するのがfirecrawl/firecrawlだ。こいつはウェブサイト全体をクロールし、AIがすぐに使えるMarkdown形式や構造化されたデータ(JSON)に変換してくれる。これにより、無駄な作業を省き、AIの学習や活用を効率的に進めることができる。


CLI開発者のためのドキュメント革命: charmbracelet/glowで実現する「見せる」README

このツールは、コマンドラインインターフェース (CLI) 上で Markdown (マークダウン) ファイルをとても魅力的に、まるでウェブサイトのようにレンダリングできる優れものです。開発者にとって、さまざまな場面で「ちょっとした工夫」として役立ちますよ。