⭐星空型のメモ超
・同じようなワードのメモが正座としてつながる。
・メモをほかの人に共有できる
・同じようなメモを書いている人に自分のメモを見せられる
・ユーザーごとにメモを投稿できる
・公開するかしないかを選べる
・自己ホストできる
・3つのデータベースに対応: MongoDB / SQLite / PostgreSQL
環境変数 DB_TYPE で切り替えられます。
| DB_TYPE | データベース | 備考 |
|---|---|---|
mongodb(デフォルト) |
MongoDB | デフォルト |
sqlite |
SQLite | 追加インストール不要! 一番お手軽! |
postgresql |
PostgreSQL | postrgresqlを使いたい方におすすめ! |
どのデータベースを選んでも、機能や操作に違いはありません。
・Python 3.14 以上
・必要なライブラリ(requirements.txt)
- このレポジトリをフォークし、フォーク後のレポジトリをクローンする
- クローン後にvenvを作成し、requirements.txtの内容をインストールする
- example.envを.envに改名し、適切に内容を入力する
SQLite(もっともお手軽):
DB_TYPE=sqlite
SECREST_KEY=ランダムな文字列
TURNSTILE_SECRET=
TURNSTILE_SITEKEY=
TITLE=星空メモ
DESCRIPTION=星空にメモを追加できる新感覚メモサービスMongoDB:
DB_TYPE=mongodb
MONGO_URI=mongodb://localhost:27017
DB_NAME=NotSNS
SECREST_KEY=ランダムな文字列
TURNSTILE_SECRET=...
TURNSTILE_SITEKEY=...PostgreSQL:
DB_TYPE=postgresql
POSTGRESQL_URL=postgresql://user:pass@localhost:5432/notsns
SECREST_KEY=ランダムな文字列
TURNSTILE_SECRET=...
TURNSTILE_SITEKEY=...- 「terms.html」と、「privacy.html」を適切な利用規約に差し替える
- main.pyを起動する
- localhost:5000にアクセスし、ログインページが表示されればOK
- ブラウザでログイン(初回アクセス時に自動的にアカウント作成)
- MongoDB の場合:
Usersコレクションで自分のrolesに"owner"を追加 - SQLite/PostgreSQL の場合:
documentsテーブルでcollection='users'のドキュメントのdata->rolesに"owner"を追加 - 管理画面(
/admin)からロールやユーザーを管理できます
星空メモには権限システムとロールシステムがあり、管理者ページから追加できます。
また、権限IDは以下のものがあります。
- 投稿の閲覧
- 投稿の作成
- 投稿の削除
- メンバーのミュート
- メンバーのBan
- ロール管理
星空メモでユーザーを処罰をするには、以下のロールを追加することで処罰できます。
Banの場合: 「ban」
ミュートの場合: 「mute」
星空メモを自分専用にするには、「user」ロールの権限を「1」だけに絞り、
「owner」ロールをMongoDBから自分に追加れば自分専用にできます。
・新規登録時: 8文字以上必要 ・パスワード変更時: 同様に8文字以上必須 ・パスワード変更はログイン後のフッターリンクから行えます