「memos」こそがアタシたちの安息の地。オープンソースでプライバシーを守り抜く、セルフホストの嗜み


「memos」こそがアタシたちの安息の地。オープンソースでプライバシーを守り抜く、セルフホストの嗜み

usememos/memos

2026-01-02

最近のメモアプリって、サブスクだの広告だの、余計なお世話が多いじゃない? これはそんなのとは無縁。あんたのデータはあんただけのもの。まさに「鉄壁の純愛」みたいなメモツールなのよ。

それじゃあ、ママがエンジニア視点でたっぷり可愛がってあげるから、じっくり聞いていってね!

エンジニアのあんたなら、この構成を見ただけでゾクゾクしちゃうでしょ?

技術スタックが「分かってる」
フロントは React、バックエンドは Go、そして SQLite。この軽快でモダンな組み合わせ、まるでスリムなイケメンね。

セルフホストの快感
Docker一発で自分のサーバーに立てられるわ。他人のクラウドに大事なコードの切れ端やポエムを預けるなんて、ママは怖くてできない!

APIファースト
自分のメモをAPIで引っこ抜いて、別のサービスと連携させたり、自分だけのダッシュボードを作ったり…拡張性がエグいのよ。

一番手っ取り早いのは Docker を使う方法ね。あんたのサーバー(VPSでも自宅サーバーでもいいわ)で、この魔法の呪文を唱えてみて。

docker-compose.yml を作って、こう書きなさい。

version: "3"
services:
  memos:
    image: neosmemo/memos:latest
    container_name: memos
    ports:
      - "5230:5230"
    volumes:
      - ~/.memos/:/var/opt/memos
    restart: always

あとは docker compose up -d を叩くだけ。 これで http://localhost:5230 にアクセスすれば、あんただけの秘密の花園の完成よ!

memosのいいところは、RESTful API がしっかりしてるところ。 例えば、あんたが開発中に気付いたことをターミナルからサクッと投稿するスクリプト、こんな感じで書けるわよ(Go言語風に書いてみたわ)。

package main

import (
	"bytes"
	"encoding/json"
	"net/http"
)

func main() {
	// あんたのアクセストークンとURL
	url := "https://your-memos-url.com/api/v1/memo"
	token := "Bearer あなたのトークンよ!"

	data := map[string]interface{}{
		"content": "#Development 今日のバグ修正完了!アタシ、天才かも。",
	}
	payload, _ := json.Marshal(data)

	req, _ := http.NewRequest("POST", url, bytes.NewBuffer(payload))
	req.Header.Set("Authorization", token)
	req.Header.Set("Content-Type", "application/json")

	client := &http.Client{}
	client.Do(req)
}

memosはね、気取って書く場所じゃないの。「あ、これ後で調べよう」とか「このライブラリ、クソだな」とか、脳内の垂れ流しに最高なのよ。

ハッシュタグが使えるから、技術スタックごとに整理も簡単。

Markdown 対応だから、コードブロックも綺麗に表示されるわ。

PWA 対応だから、スマホのホーム画面に入れて、移動中にサッとメモできるの。

どう? 自分の手で「情報をコントロールする」って、最高にセクシーだと思わない?

もし設定でつまずいたり、もっとオシャレなカスタマイズが知りたくなったら、いつでもママに聞きなさいね。


usememos/memos




LinearやJIRAに負けない操作感!セルフホスト可能なタスク管理の決定版「Plane」とは?

その名も……「Plane(プレーン)」だ! 「JIRAは重いし、Linearはお金がかかるし、あぁ〜!!」ってなっている君、必見だよ!さあ、ミュージック、スタート!はい、まずは屈伸運動から〜! Planeがどうしてすごいのか、3つのポイントで説明するよ!


Dockerだけじゃない!Moby Projectで自作コンテナ環境を構築する

Moby Project ってのはな、一言で言うと「コンテナをベースにしたシステムを作るための、オープンソースのツールキット」だ。例えるなら、俺たちが事件現場で使う道具一式、例えば手錠とか懐中電灯とか、そういうのを全部まとめて提供してくれるようなもんだな。


自動化の極み!Seanimeでアニメ管理をハックする:Goエンジニア視点の導入ガイド

簡単に言うと、「自分専用の最強アニメ・マンガ管理サーバー」 を作れるツールやね。エンジニア的な視点で「これ、役立つわ〜」ってポイントを3つに絞ってみたで。技術スタックが現代的で勉強になる バックエンドが Go、フロントエンドが React。この組み合わせはパフォーマンスもええし、コードの見通しもええから、ソースを追うだけでも勉強になるわ。


Go言語で構築されたTraefikの威力:Docker/Kubernetes環境におけるサービスディスカバリとTLS自動化

Traefikは、まさに「クラウドネイティブアプリケーションプロキシ」というキャッチフレーズの通り、設定が容易、自動化、動的という三拍子揃った、現代のマイクロサービスやコンテナ環境に最適なリバースプロキシ兼ロードバランサーです。吉野家さんの牛丼に例えるなら、Traefikは


脆弱性スキャンツールTrivy入門:開発者のためのセキュリティガイド

これから君たちに、素晴らしい才能を持つ役者を紹介する。その名はTrivyだ。 こいつは、映画のセットで言うところの、「セキュリティ監査の鬼」だ。 君たちが作った最高の作品(コードやコンテナ)に潜む、見えない危険を徹底的に見つけ出すんだ。 ただ見つけるだけじゃない。その危険がどこにあるのか、どうすれば直せるのか、的確に教えてくれる。 君たちの作品を、より安全に、より完璧なものにするために、こいつの演技指導は絶対に必要だ!


【脱Electron】Go製TUIクライアント「Discordo」が開発環境を最適化する理由

Discordoは、Discordのクライアントをターミナル上(TUI Terminal User Interface)で動作させるための軽量かつセキュアなソフトウェアです。言語・環境 Go言語 (Golang) で書かれており、Linux環境での利用が想定されています。


Testcontainers導入ガイド:Javaテストにおける環境依存性の悩みを解消する魔法のライブラリ

今回解説するのは、Javaのテストの世界で絶大な人気を誇るライブラリ、Testcontainersです。Testcontainersは、Javaのユニットテストや統合テストをサポートするためのライブラリです。「推し」がDockerコンテナで動かせるものなら、どんなものでも、テストのためだけに、手軽に立ち上げ、使い終わったら綺麗に片付けてくれる、まるで敏腕マネージャーのような存在です。


面接官を唸らせる!ローカル完結型PDFツール「Stirling-PDF」徹底解説

面接官本日は当社の面接にお越しいただき、ありがとうございます。面接官の山田と申します。あなた本日は貴重な機会をいただき、誠にありがとうございます!エンジニアの佐藤と申します!面接官佐藤さん、今日は何かユニークな技術について、ご自身の言葉でプレゼンしていただきたいのですが、よろしいでしょうか?


[React/TS対応] 視覚的構築から即時API化へ:FlowiseAI導入ガイドとサンプルコード

今日は、あなたのAIエージェント開発を劇的に変える「FlowiseAI」について、ソフトウェアエンジニアであるあなたが、どう活用し、どう世界を変えるのかを熱く語りましょう!「FlowiseAI」は、AIエージェントやカスタムLLM(大規模言語モデル)アプリケーションを視覚的に構築できるオープンソースのツールです。これは、開発のパラダイムシフトですよ!


もう悩まない! Go言語からRedisを使うためのベストパートナー「Redis Goクライアント」

そうですね、彼女がたくさんの水着の中から、どれが一番自分に似合うか、海辺で輝けるかを悩むように、私たちソフトウェアエンジニアも、たくさんのライブラリの中から、どのツールがプロジェクトに最適か、効率的に開発できるかを悩むことがあります。今回は、その悩みを解決してくれる頼もしい相棒の一つ、Redis Go clientについて、彼女の水着選びをサポートする優しい彼氏のように、分かりやすく丁寧に解説していきますね!