Skip to content

Latest commit

 

History

3,032 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eHagaki OGP

eHagaki

https://lokuyow.github.io/ehagaki/

eHagaki(えはがき)は、画像・動画圧縮機能付きの投稿専用Nostrクライアントです。
デバイス上で画像や動画を自動圧縮し、効率的にNostrへ投稿できます。

主な特徴

  • Nostr投稿専用: 投稿機能に特化し、シンプルなUIで快適な利用体験を提供
  • 画像・動画圧縮: 画像・動画はアップロード前に自動で圧縮され、通信量を削減(圧縮レベル調整可能)
  • 見たまま編集できるリッチエディター: プレビュー画面と入力画面が分かれておらず、画像・動画・リンク・カスタム絵文字・ハッシュタグなどを実際の投稿に近い見た目で直接編集可能。ハッシュタグをピン留め(保持)して連続投稿することも可能
  • 多彩なログイン・アカウント管理: 秘密鍵(nsec)、ブラウザ拡張(NIP-07)、リモート署名(NIP-46)、親クライアント連携でのログインに対応。複数アカウントの切り替えも可能
  • PWA・共有インテント対応: モバイル・デスクトップ両対応。Androidは外部アプリの共有ボタンから直接メディアアップロード可能
  • ドラフト機能: 投稿内容を下書きとして保存し、後から編集・投稿が可能
  • リプライ・引用・チャンネル投稿: 各種URLクエリやnostr: URIを通じたリプライ・引用投稿(NIP-10, NIP-18)に対応。パブリックチャット(NIP-28)のチャンネルへの投稿もサポート
  • Content Warning (CW): センシティブなコンテンツ(NIP-36)に対する警告の設定が可能
  • 埋め込み: iframe、Full Web Component、Host-owned Composer Lite Web Componentの3方式を提供
  • 多言語対応: 日本語・英語に対応(ブラウザ設定から自動判定)

URLクエリ

アクセス時にエディターへテキストを事前入力できます:

https://lokuyow.github.io/ehagaki/?content={url-encoded-text-here}

リプライ・引用投稿

URLクエリパラメータでリプライや引用投稿を指定できます。nevent1... または note1... 形式(NIP-19)に対応しています。

# リプライ
https://lokuyow.github.io/ehagaki/?reply=nevent1...

# note1形式でも可
https://lokuyow.github.io/ehagaki/?reply=note1...

# 引用
https://lokuyow.github.io/ehagaki/?quote=nevent1...

# note1形式でも可
https://lokuyow.github.io/ehagaki/?quote=note1...
  • リプライ: NIP-10準拠のe/pタグを自動構築(スレッドroot引き継ぎ対応)
  • 引用: NIP-18準拠のqタグを自動構築し、投稿時に引用イベントとして処理されます
  • URLクエリ由来の参照イベントはプレビュー表示されます
  • エディタ本文に nostr:nevent1... または nostr:note1... を含めた場合も引用として処理されます
  • 本文中の複数の nostr: URI は出現順に処理されます
  • 本文中の nostr: URI からの引用ではプレビューは表示されません
  • ×ボタンでリプライ/引用をキャンセルし、通常投稿に戻れます

埋め込み

iframe、Full Web Component、Host-owned Composer Lite Web Componentの方式選択と最小例は、公式入口の docs/EMBEDDING.md を参照してください。

既存のNostrクライアントがaccount、signer、event構築、publishを所有している場合はHost-owned Lite、eHagakiにself-publishまで所有させる場合はFull、origin境界やparent-client連携が必要な場合はiframeが候補です。iframe/Web Componentともhost側からAccent/Base themeを指定できます。優先順位とAPIの詳細は各ガイドを参照してください。

Web Componentではiframeのparent-client auth/RPCや postMessage を使いません。ホストと同じWindow realm / originで動作するためローカルnsec認証には対応せず、NIP-07はhostの window.nostr を直接利用し、NIP-46は埋め込まれたeHagakiのUIから利用します。通常版/PWAとiframe版では従来どおりnsec認証を利用できます。

技術スタック

フロントエンド

Nostr

  • rx-nostr - リレー管理とイベントストリーミング
  • nostr-tools - Nostrプロトコル実装

メディア処理

PWA

対応NIPs

License

eHagaki のアプリケーション本体のソースコードは MIT License で公開しています。

ただし、このプロジェクトの配布物には第三者のソフトウェアおよび素材が含まれます。 それらには各権利者のライセンス、著作権表示、商標、利用条件が適用されます。

主な第三者コンポーネント:

  • Font Awesome Free SVG Icons
  • Mediabunny
  • @mediabunny/aac-encoder
  • GitHub Mark

詳細は THIRD_PARTY_LICENSES.md を参照してください。

eHagaki のアプリアイコンおよび OGP 画像は、このプロジェクト用に作成したオリジナル素材です。

About

A lightweight, post-only Nostr client that compresses media on your device for fast, data-efficient uploads.

Topics

Resources

Stars

14 stars

Watchers

0 watching

Forks

Contributors

Languages