加藤憲保

Web小説保管サイト「貸し本棚」の開発者です。 https://www.kashi-h…

加藤憲保

Web小説保管サイト「貸し本棚」の開発者です。 https://www.kashi-hondana.com/

マガジン

  • 貸し本棚開発記

    貸し本棚の開発記録です。

  • 貸し本棚の紹介

    貸し本棚の紹介、使い方、便利な機能などについての紹介記事を集めます。

最近の記事

背景画像をフェード切り替えする

貸し本棚で背景画像の設定ができるようになりました。 がっつり背景画像をタイリングするものではなく、控えめにcoverするスタイルですが、ポータルだけでなく、本棚、小説、エピソードそれぞれに決まった枚数まで背景画像を設定することができます。小説やエピソードの背景を設定して、文字打ちすることで、ビジュアルノベルのような雰囲気を楽しむこともできます。 この記事は以下のことに役立つかもしれません。 すでに表示されている画像を別の画像にフェードアウト→フェードインして切り替える方

    • 小説執筆に役立つテキスト入力ショートカット

      パソコンでのテキスト入力の方法について基本的な内容をまとめます。知ってる人にとっては「今更そんなことを!?」という内容ですが、意外に知らない人も少なくない様子で、記事にまとめました。初歩的すぎて類似記事は少ないと思います。 ご利用のエディタによっては動作が異なることがあります。記事内容は貸し本棚のエディタによる小説執筆を前提としていますが、他のテキストエディタでもほとんど同じ動作を期待できます。 小説執筆は線的なものではなく、エピソードや段落単位、行単位、単語単位で移動や切

      • 小説投稿前に反応を知りたい

        小説投稿サイトに作品を投稿する前は緊張すると思います。どんな反応がもらえるか、多くの人に読んでもらえるか、良い感想がもらえるか、否定的な感想に傷つくか、投稿するまでわからないのは怖いと思います。 小説公開前に、貸し本棚でドラフトを一部の人に公開し、小規模な読者に事前に意見を貰えれば、なにか大きな間違いをしていないか、勘違いや重大な不整合がないか、平均的にどんな反応を貰えるかについて知ることができるかもしれません。つまり、試読です。 そういう機能を実装しようと計画しましたが

        • バンドルサイズを減らしてみた

          貸し本棚のスタート時はとても小さなサービスだったので全く気にしていなかった問題ですが、時間が経つにつれてみるみるバンドルサイズが肥大化してきました。 地味な作業ですが、その削減について書いておきます。 バンドル(bundle)とはwebpackやviteのようなバンドルツールを使うと、アプリケーションで使用するjavascriptファイルの依存関係を解決して事前読み込みし、単一のjavascriptファイルにまとめてくれます。 貸し本棚は必要なjsファイルのみならず、ルー

        背景画像をフェード切り替えする

        マガジン

        • 貸し本棚開発記
          8本
        • 貸し本棚の紹介
          4本

        記事

          (あなたの)作品集が作れます

          貸し本棚には「記事を書く」機能があります。 これはnoteのようなブロックエディタで、例えば創作論や次回作の構想、作品の設定資料、登場人物の紹介などを記述し、本棚のジャンル、あるいは小説目次ページ、シリーズページなどの場所を指定して公開することができる機能です。 このブロックエディタにはご自身の作品にリンクを貼ることもできるので、作品紹介記事を作ることもできます。 ですが、貸し本棚の記事には、もうひとつ便利な「外部記事を読み込む」という機能があります。 投稿サイトの自分の

          (あなたの)作品集が作れます

          エタらない機能

          Web小説のエタる(完結しない)率をご存知ですか? およそ8割、あるいはそれ以上(約92%)というレポートもあります。 エタる理由は様々ですが、概ね作家様に依存する問題で、執筆サービスとしてできることは限られています。その中でできるだけ手間をかけずに実装できる機能を選択的にβ公開しました。 現在地とゴールが見える 今回実装した機能は2つあります。 ひとつはプロット機能。 小説のエピソードデータに140字以内のあらすじを添える機能ですが、これは専用画面にて、本文の無いタ

          エタらない機能

          Editor.jsでリンク埋め込み

          リリースしたばかりの機能です。記事エディタに実装されていますが、それ以外のノート等でも動きます。 貸し本棚の記事、ノートエディタはEditor.jsを採用しています。このブロックエディタはプラグインで駆動するエディタで、様々なプラグインが公式、非公式問わず用意されています。 ブロックエディタというのは、ここnoteもそうであるように、ブロック単位でレイアウト設定を行うモダンエディタのことです。要素がブロック単位で管理されるので、並び替えや構造を直感的に把握できるメリットが

          Editor.jsでリンク埋め込み

          開発者からみた小説投稿サイトUI比較

          多数ある小説投稿サイトの中から代表的なものを以下の5サイトピックアップして、開発者目線でレビューしてみたいと思います。開発者目線なので、読者数やランキング、ポイント、収益化、アプリなどは全部無視して、純粋にWebのUI面にフォーカスし、使いやすさを検証しています。 小説家になろう カクヨム エブリスタ アルファポリス ノベルアップ+ 今回検証したのは「作家サイド」で小説を投稿した場合に限定しており、読者目線についてはあまり深く追跡していないです。 動いているのが

          開発者からみた小説投稿サイトUI比較

          入力に応じて伸びていくテキストエリア

          テキストエリア(textarea)はそのサイズを超えるテキストを入力するとスクロールバーが現れ、全体を表示してくれません。テキストを入力するとその文字数に応じて勝手に縦に伸縮するtextareaが欲しいというケースは多く、サンプルも多数ありますが、貸し本棚で実装している方法を単純化して説明してみたいと思います。理屈はめちゃくちゃ単純です。 ダミーテキストで全体を拡張する大枠のdivを用意してrelativeにします。その中にダミー用のdivを下に、テキスト入力するtexta

          入力に応じて伸びていくテキストエリア

          横断検索と置換履歴

          貸し本棚は編集中の小説に対して、全エピソードを対象に横断検索を行うことができます。検索結果を元に、一括で置換することができたり、指定の検索結果の元にジャンプすることができます。 横断検索検索結果は一覧化され、リストをクリックすると指定箇所にジャンプすることができます。単なるテキスト検索なので軽量です。 結果リスト この検索機能について特筆できるものはありませんが、結果本文の抽出はもう少し改善できそうです。現在はこうなっています。 let rc = res.data;l

          横断検索と置換履歴

          頑張らない開発と自己コードレビュー

          こんにちは、加藤です。コードを書くときは水を飲みます。コーヒーやお茶を飲むとトイレが近くなって、中断するたびに効率が落ちるのでよくありません。 貸し本棚を開発するときに最初に決めた「1時間ルール」というものがあります。壁にぶつかって1時間悩み続けて光明が見えなかったら放棄するという規定です。 あのときもっと頑張れば良かった……こと開発に関して、このような後悔を抱いたことはありません。むしろ逆に「なんであんなに頑張っちゃったんだよ」という反省の方が頻繁です。 開発で頑張り

          頑張らない開発と自己コードレビュー

          小説のバージョン管理

          こんにちは、加藤です。既存機能の紹介です。 長編小説を書いている作家様が遭遇する悩みの一つに、エピソードの大幅な改変があります。 ツンデレ路線で書いてしまった展開が気に入らず、ラブラブに書き直したら話が続かなくなってしまった!以前のツンデレに戻したい!私のツンデレ!どこへ行ったの? という事故はよくある話です。 この問題を解決するために、多くの作家様は執筆中のファイルをコピーしてバックアップするという原始的な方法、あるいはエピソード単位で保全用の没ファイルにコピペするとい

          小説のバージョン管理

          貸し本棚のご紹介

          こんにちは、加藤です。蜘蛛の糸をよじ登った大盗賊カンダタはどうすれば救われたのか考える毎日です。 貸し本棚の開発記を書いていこうと思っていますが、その前に貸し本棚の簡単な紹介をしておきたいです。 小説保管サービス貸し本棚は小説投稿サイトの体を成した小説保管サービスです。投稿サイトとほとんど変わりませんが、大勢に読んでもらうための楽天のようなモール系ではなく、個人スペースを持つことができるレンタルカートのようなものです。 そのため、アクセス数の集計やランキング機能がありま

          貸し本棚のご紹介

          貸し本棚における「文字打ち」機能の実装

          こんにちは、貸し本棚開発者の加藤憲保です。魔人加藤ではありません。サイコパワーでスパゲッティコードを書きます。 貸し本棚にはいくつかの奇妙な機能がありますが、その中でも使用頻度の高い「文字打ち」機能というものがあります。ノベルゲームのように本文を一文字ずつ打ち出す機能で、その実装の概要を書きたいと思います。 貸し本棚とは貸し本棚は小説投稿サイトの体を成した、小説保管サービスです。宣伝、コミュニティ、ランキングやレスポンスを強制するような騒がしい機能がありません。 多くの人に

          貸し本棚における「文字打ち」機能の実装