まえがき
DLsite Playはかなり素敵な同人作品ビューアです。公式説明によれば、
購入した作品のZIPファイルをダウンロードや解凍する手間もなく、ブラウザ上ですぐに作品を閲覧できる配信方法です。
パソコン、スマートフォン、タブレットなどブラウザとインターネットに接続できる環境さえあれば、いつでも手軽に作品を楽しむことができます。
ブラウザ視聴について(DLsite Play)
とのことで、2015年の提供開始1からDLsiteユーザーの視聴体験を支え続けています。同人作品をブラウザ上で視聴できるというサービスは、当時大学生になったばかりの私にとっては相当な衝撃でした。どうにか同じようなアプリを自分で作れないものか、と友人と議論したのを覚えています。その時はシンプルな構成に収めようと、オンデマンドでZIPを解凍できるnginxモジュールを見つけて試したものでした。
2015年前後は、他サービスでも電子書籍のビューアを提供し始めたり、音楽のストリーミングサービスが参入し始める頃でしたが、多様な作品形式に対応していた点でDLsiteは一歩先を進んでいたといえます。それから10年経った2025年にも、DLsite GamePlayというスマホでPCゲームを遊べるストリーミングサービスを開始しており、かれらがいかにストレスなくコンテンツを楽しむ環境を重視しているかが分かるでしょう。
さて、DLsite Playはかなり素敵な同人作品ビューアですが、大きな問題点があります。それは、作品購入後であっても、サークルが退会したり販売終了したら読めなくなること。そして、DLsiteで購入した作品しか読めないことです。DLsiteというコンテンツ販売サービスを支えるためのビューアなので当たり前ではあるものの、この素敵な同人作品ビューア体験と引き換えに、過去の傑作がZIP倉庫2に押しやられるのを受け入れるわけにはいきません。
私が大学生の時分でDLsite Playクローンを作ろうと思ったのも、おおよそこういう事情によるものです。しかし、その夢は具体的な行動を伴わないまま10年ほどが経ちました。幸いにも、最近はこうした同人作品にも使えそうなOSSのビューアがいくつか出ていますし、今はClaude Codeが隔離されたWSLの上で動いているので、あの頃よりは理想を形にできそうです。
同人作品ビューアを考える
私が目指しているのは完全なDLsite Playクローンではありません。DLsite Playとは見た目や機能が似ていなくても、同人作品ビューア(あるいは同人作品管理システム)に必要な機能を備えていて、それが手元のコンテンツで動けばよいのです。
しかしこれは、実は完全なDLsite Playクローンを実現するより難しい取り組みです。私が同人作品ビューアに何を求めていて、何があれば使いやすいのか、あるいはあっても意味のない機能とは? それが分からないまま進めるとどうなるか――本当に必要な機能が揃っているミニマルなビューアを見逃してしまう。なんとなく機能が多い無料のビューアを入れてもイマイチ使いづらい。それなら、とClaude Codeに全部盛りのシステムを作ってもらったのに3日で使わなくなる――せっかくのAI最新技術もこれでは無意味です。
こうした結末を防ぐために、仮に呼ぶとすれば「ぼくらの同人作品ビューア(概念)」がどんな姿をしているかを、事前によく想像しなければいけません。
DLsite Playはかなり素敵な同人作品ビューアで、こうした概念を取り出すのに適した題材です。改めて公式説明やDLsite Play自体を眺めて、DLsite Playのいいところ・よくないところを挙げてみましょう。好みや慣れに過ぎないような点、DLsite Playに限らない特徴もとりあえず書いておきます。
- 画像・PDF・音声・動画・テキストなど様々な形式のコンテンツを1つの画面で閲覧できる。
- 作品名とサークル名や作品形式が表示されており、必要に応じて絞り込める。
- 作品の購入日が記録されており、作品名やサークル名と同様にソートできる。
- 階層構造を持ったフォルダを閲覧できるシンプルなファイルマネージャ3として扱える。
- フラットな同人作品の一覧と、階層構造を持つ同人作品フォルダの扱いを分離している。
- PDFをスクロール可能な連続したページではなく、1枚ずつ画像リストとして表示できる。
- 音声はオーバーレイのキューで再生され、音声を聞きながら別の作品を読める。
- コンテンツが配信用に最適化されており、ローディングの待ち時間を意識することが少ない。
- よく使う機能はメニューバーに押し込めずに常に表示する一方で、細かいフィルタやソートも用意されており、UIのバランスがよい。
- レスポンシブデザインに対応しており、スマートフォンでも快適に閲覧できる4。
- オフラインでの閲覧手段がある。オフラインキャッシュとして、あるいは作品のZIPファイルをそのままダウンロードできる。
よくないところは前述の通り、DLsiteで配信中の作品しか読めない点と、別のプラットフォームや自前で用意したコンテンツを登録できない点が最も大きいです。また、サークル側が手軽にDRMをかけられるようになっていて、購入者の所有権を軽視する傾向がありますが、これはDLsite Play自体のデメリットではありません。
このような点を踏まえて、概念上の同人作品ビューアが備えるべき特徴を考えてみます。みなさんもやってみましょう。あったら嬉しいな、ではなく、これがなければ3日と経たずに捨ててしまうようなコア機能を探すのを意識してください。
そして、いろいろ探しながら私が辿り着いた最小限の「ぼくらの同人作品ビューア(概念)」は、「作品フォルダ指向のプレビュー付きファイルマネージャ」になりました。DLsite Playの特徴を参考にもう少し具体的に記述すると、以下のような感じです。
- フラットな同人作品フォルダの一覧と、階層構造を持った同人作品フォルダの2つを完全に区別して表示できる。深い階層の作品を閲覧していても、すぐに同人作品の一覧に戻れる。
- 同人作品フォルダはファイルシステム上のファイル名とは異なる作品名を表示できる。ファイルシステムの制約を受けずに作品の名前を自由に設定できる。
- 画像・PDF・音声・動画・テキストなど様々な形式のコンテンツを新しいタブやウィンドウを開かずに閲覧できる。前後のファイルに移動したり再生状態を操作できる最低限のUIを持つ。
検索や絞り込み、購入日順ソート、サムネイル表示など実際に必要な機能は他にもいろいろありますが、最小限のコア機能はここだと思います。作品単位でとりあえず手軽にコンテンツを眺める、という使い方を想像してください。
コア機能のスコープが定まったので、次は既存のソフトウェアでこれを実現できないか、という論点に移りましょう。
同人作品ビューアを探す
改めて、「ぼくらの同人作品ビューア(概念)」を示します。
- フラットな同人作品フォルダの一覧と、階層構造を持った同人作品フォルダの2つを完全に区別して表示できる。
- 同人作品フォルダはファイルシステム上のファイル名とは異なる作品名を表示できる。
- 画像・PDF・音声・動画・テキストなど様々な形式のコンテンツを新しいタブやウィンドウを開かずに閲覧できる。
この程度なら少し探せばあるんじゃない?と思うかもしれませんが、全てにマッチするアプリケーションはなかなか見つかりませんでした。
たとえば、Windowsのエクスプローラは、Alt+Pでプレビューウィンドウが使えるので3を満たしそうですが、実際はPDFは冒頭数ページだけ、音声や動画は外部アプリを開くので使い物になりません。1は全く区別できませんし、2ももちろんありません。
この基準で、いくつか同人作品ビューアとして使えそうなアプリケーションを眺めてみましょう。
| アプリ | カテゴリ | 作品リスト | フォルダ階層 | 別名表示 | マルチメディア |
|---|---|---|---|---|---|
| DLsite Play | ブラウザ | ||||
| LANraragi | ブラウザ/画像 | - | △ | ||
| Komga | ブラウザ/画像 | - | △ | ||
| Mangatsu | ブラウザ/画像 | - | △ | ||
| Kikoeru | ブラウザ/音声 | △ | |||
| Audiobookshelf | ブラウザ/音声 | - | △ | ||
| Stash | ブラウザ/動画 | - | △ | ||
| Nextcloud | ブラウザ | - | - | ||
| FileBrowser Quantum | ブラウザ | - | - | ||
| copyparty | ブラウザ | - | - | ||
| Windows Explorer | ローカル | - | - | △ | |
| Directory Opus | ローカル | - | - | ||
| XnView MP | ローカル/画像 | - | △ | ||
| NeeView | ローカル/画像 | - | △ | ||
| Hydrus Network | ローカル | - | △ |
マルチメディア列の△は、おおよそ一部の形式での使用に特化しており、他形式は未対応または簡易的なビューアのみ提供されているものです。
これらを大きく分類すると、以下の4つのタイプがありそうです。
| タイプ | 作品フォルダ指向 | フォルダ階層 | マルチメディア |
|---|---|---|---|
| DLsite Play | |||
| コミックを想定したビューア | |||
| ファイルマネージャ系 | |||
| 階層表示可能なビューア |
これを見ると、必要な要素を全て満たすアプリケーションはほとんどないことが分かります。あんまり意味はないですが、一応MECEにしておきましょうか。
| タイプ? | 作品フォルダ指向 | フォルダ階層 | マルチメディア |
|---|---|---|---|
| 弱いファイルマネージャ? | |||
| 強いスライドショーアプリ? | |||
| 強いビューア? | |||
| 弱いビューア? |
これらの分析をまとめると、「ぼくらの同人作品ビューア(概念)」に求められるのは「作品フォルダの管理機能があるファイルマネージャ」とか「多くのメディアに対応した階層表示可能なビューア」といったものになりそうです。前節での定義とほとんど変わりませんが、既存のアプリケーションとの比較でもう少し具体的な姿を描くことができました。
ここまで言語化できればしめたものです。問題は、この条件を満たすアプリケーションが見つからなかったことくらいでしょうか。
同人作品ビューアを作る
結局、いい感じの同人ビューアが見つからなかったので作ることにしました。デモ版をchkdrs-demo.amane.moeに置いてあるので、興味のある方は触ってみてください。 demo1:demodemo1 ~ demo9:demodemo9 でログインできます。

Ghostwriter digital.png is licensed under a CC BY-SA 4.0.
axum5のバックエンドとSvelteKit6のフロントエンドに、ローカルでの作品管理にも対応できるようにTauri7でデスクトップモードも用意したクロスプラットフォームアプリです。コーディングの多くはClaude Codeが担当していますが、私の目でチェックしたり口を出したりするときのことを考えて、慣れているRustにしました。まだ開発中ですが、既に3つのコア機能は満たしています。
- フラットな同人作品フォルダの一覧と、階層構造を持った同人作品フォルダの2つを完全に区別して表示できます。
- 同人作品フォルダはファイルシステム上のファイル名とは異なる作品名を表示できます。
- 画像・PDF・音声・動画・テキストなど様々な形式のコンテンツをビューアペインで開けます。
さらに、利便性を高める以下の機能も実装しました。これがコア機能なのか追加機能なのかを区別できるのも、今回の分析あってこそです。
- カタログ機能(作品を横断的にまとめるコレクション)
- プレイリスト機能(ファイル単位で追加できるシーケンシャルなリスト)
- 簡易的なユーザ管理機能
- サムネイル自動生成機能
- 配信用軽量メディア(画像リサイズなど)生成機能
- 汎用ファイルキャッシュ機能
- ZIPダウンロード機能
まだジャンルやタグを利用できなかったり、検索機能が弱かったり、ブラウザ側から作品をアップロードする機能もありませんが、裏を返せば私にとってはそれほど重要な機能ではないということです。なんでもかんでもあれば嬉しいわけでもないので、必要に応じて少しずつ拡張していく予定です。
あとがき
DLsite Playはかなり素敵な同人作品ビューアです。しかし、DLsiteの外側を見てくれません。他にもたくさんの同人作品ビューアがあります。しかし、それぞれ異なる欠点を抱えていました。結局のところ、全てを解決できる選択肢はないようです。Claudeにこのトレードオフについて相談してみましたが、「画像ビューアと音声ビューアを別々に立てて使うといいよ☆」なんて無茶な提案でお茶を濁してきます。なんてこった。
そのため、今回は同人作品ビューアとして最も参考になるDLsite Playの機能面を掘り下げ、類似の既存アプリを調査した上で自作することにしました。自作に至るまでの過程は地味で苦しいものです――あれを入れてこれを入れて動かしたけど、結局ダメそう。設定とかカスタマイズの範囲でなんとかならないかな? いろいろ試したけどやっぱ無理――じゃあ、自作しかないか。
希望を満たすものがなければオーダーメイドで作るというのは、ソフトウェア以外でも当たり前の選択肢です。ただし、これも手間と機能のトレードオフになっています。AIエージェントを使えば時間や手間を大きく削減できるとはいえ、実装の責任はやはり自分にあります。実験的なプロジェクトや趣味のプログラミングでもない限り、自作せずに済むなら自作せずに完成度の高い既存のものを使う方が、楽だし安全だし経済的です。
AIエージェントの発展で、技術的詳細をまるで気にすることなく「あれと同じの作って」「最強の◯◯アプリ作って」なんて一言指示すれば、誰でもそれっぽい見た目のそれっぽいアプリができるようになりました。さらに、それを「オレが設計して作ったんだぜ」なんて自慢して回りたくなる誘惑も増しています。なんてったって見た目はすごくいいし、機能も全部盛りだからです。
しかし、要件も曖昧なままなんとなく便利機能をリストアップして作られた見た目だけのアプリケーションは、周囲はもちろん作った本人でさえ魅力を感じないはずです。本人に残っているのはAIガチャを引く高揚感の思い出だけ。ただの習作のTODOアプリが誰にも使われないのと同じように、AIガチャから得た興奮に利便性を見出す人はいません。
既存アプリを調査してまだないものを作る、なんてソフトウェア開発では当たり前のように思えますが、AIエージェントを持った高揚感で全て自作で解決する選択肢しか見えなくなる人も増えています。もちろん、自作の全てが悪いわけではないですが、出来のいい先行研究を知らないとまともな結果が出せないというのは、AIがあろうがなかろうが同じことです。
その取り組みの一例として、今回は欲しいものの概念を粘土のようにこね上げてから、最終的に自作の同人作品ビューアを選んだ過程について書いてみました。参考になれば幸いです。
-
DLsite、電子書籍や音声/音楽作品を視聴できるWebブラウザビューワ「DLsite Play」を提供開始 | HON.jp News Blog ↩
-
販売終了作品もDRMさえなければZIPファイルとして手元に残すことはできますが、手軽なビューアに比べて検索が面倒だし開くのも手間がかかります。すぐに手を伸ばせる本棚ではなく、押し入れの段ボールに保管されているイメージで「ZIP」の「倉庫」と表現しました。 ↩
-
Windowsにおけるエクスプローラ、macOSにおけるFinderなど。ファイラー。 ↩
-
スマートフォン向けにはアプリとしてDL Library(画像・PDF・テキスト作品向け)やDLsite Sound(音声作品向け)も提供されています。 ↩
-
Rust製のウェブアプリケーションフレームワーク。今回はAPIサーバとして使用しました。 ↩
-
柔軟性があり高速なコンポーネントフレームワークのSvelteを使って構築されたフロントエンドフレームワーク。 ↩
-
Rust製のデスクトップ/モバイルアプリケーションフレームワーク。今回はモバイルアプリは対象外です。 ↩