シンプルなブックマーク管理 Web アプリです。Flask 製の単一ファイル (app.py) で動作し、LXD コンテナなどの Ubuntu 環境に 1 コマンドでインストールできます。
- GitHub: https://github.com/hirogura/selfmark
- ポート 80 で公開(Tailscale の IP / MagicDNS からアクセス可能)
- ブックマークデータは
/opt/lxd-data/selfmark/bookmarks.jsonに保存されます(このファイルは GitHub には公開されません)
- ブックマークの追加・編集・削除
- カテゴリー分類、カテゴリーごとの並び替え(ドラッグ&ドロップ)
- お気に入り(スター)登録
- ファビコン表示(自動取得・手動アップロード)
- JSON エクスポート / インポート
- Google Chrome 拡張機能からの追加・閲覧
必要なもの: python3 と curl(Ubuntu / Debian)
curl -fsSL -o install-selfmark1.sh \
https://raw.githubusercontent.com/hirogura/selfmark/main/install-selfmark1.sh
sudo bash install-selfmark1.shインストールが完了すると、以下の情報が表示されます。
- Web UI の URL(Tailscale の IP または MagicDNS ホスト名)
- インストール先:
/opt/lxd-data/selfmark - 管理コマンド(
systemctl status selfmark/systemctl restart selfmark)
スクリプトの内容は以下の処理を行います。
- GitHub から
app.pyをダウンロード - Python 仮想環境 (
venv) の作成と依存パッケージ(Flask, Pillow)のインストール - systemd サービス (
selfmark.service) の登録と起動 - Tailscale の IP / ホスト名の確認
GitHub に最新版が公開された場合、app.py を再ダウンロードして再起動するだけで反映されます。
sudo curl -fsSL \
https://raw.githubusercontent.com/hirogura/selfmark/main/app.py \
-o /opt/lxd-data/selfmark/app.py
sudo systemctl restart selfmarkブラウザからブックマークを追加・検索・閲覧できる Chrome 拡張機能です(Manifest V3)。
主な機能
- 現在開いているタブの URL を 1 クリックで selfmark に追加
- ブックマークの検索・閲覧(カテゴリー / お気に入りで分類表示)
- ブラウザ上から編集・削除・お気に入り登録が可能
導入方法
-
拡張機能 ZIP をダウンロードします。
curl -fsSL -o selfmark-extension-v15.zip \ https://raw.githubusercontent.com/hirogura/selfmark/main/selfmark-extension-v15.zip unzip -d selfmark-extension selfmark-extension-v15.zip
-
Chrome で
chrome://extensionsを開きます。 -
右上の「デベロッパーモード」を ON にします。
-
「パッケージ化されていない拡張機能を読み込む」をクリックし、解凍した
selfmark-extensionフォルダを選択します。 -
ツールバーの selfmark アイコンをクリック → 設定(歯車)を開き、selfmark の Web UI の URL を入力して「保存」します。
これでブラウザから直接ブックマークを操作できます。
selfmark-sub は bookmarks.json を読み込んで、編集不可の軽量な閲覧専用ページを表示します。既定のポートは 81 です。
curl -fsSL -o install-selfmark-sub1.sh \
https://raw.githubusercontent.com/hirogura/selfmark/main/install-selfmark-sub1.sh
sudo bash install-selfmark-sub1.sh /opt/lxd-data/selfmark/bookmarks.json 81引数: 第 1 引数 = bookmarks.json のパス(既定: /opt/lxd-data/selfmark/bookmarks.json)、第 2 引数 = ポート番号(既定: 81)。
インストール後、表示された URL(http://<ホストIP>:81/)にアクセスしてください。
管理コマンド
systemctl status selfmark-sub # 状態確認
systemctl restart selfmark-sub # 再起動
systemctl stop selfmark-sub # 停止sudo systemctl disable --now selfmark
sudo rm /etc/systemd/system/selfmark.service
sudo systemctl daemon-reload
sudo rm -rf /opt/lxd-data/selfmark注意:
/opt/lxd-data/selfmarkにはブックマークデータ(bookmarks.json)とファビコンキャッシュも含まれます。削除前に必要なデータは Web UI の「エクスポート」で JSON ファイルにバックアップしてください。
sudo systemctl disable --now selfmark-sub
sudo rm /etc/systemd/system/selfmark-sub.service
sudo systemctl daemon-reload
sudo rm -rf /opt/lxd-data/selfmark-sub- ブックマークデータはインストール先の
bookmarks.jsonに保存されます。 - このリポジトリには個人情報(
bookmarks.json・フィードの OPML 等)は含まれていません。.gitignoreで除外しています。 - バックアップは Web UI の「📥 エクスポート」で JSON ファイルをダウンロードできます。
このプロジェクトは MIT License の下で公開されています。