概要
会社概要
ブラウザだけで動くケース変換ツールを作った理由、その仕組み、私たちが大切にしていること。
ツールを作った理由
すべてのコードベースには命名規則があり、どれも同じではありません。Python は snake_case を、CSS と URL は kebab-case を、JavaScript は camelCase を、React コンポーネントは PascalCase を、環境変数は CONSTANT_CASE を求めます。名前を一つの世界から別の世界へ移すという単純な作業が、これまで時間を要し誤りの多い手作業でした。たった1文字の大文字漏れで、ビルドもルーティングもデータベースのカラムも壊れうるのです。
オンラインケース変換ツールは多くありますが、その多くは2つのいずれかのことをします。テキストをサーバーへアップロードするか、広告とポップアップだらけのページに埋もれているかです。どちらも望ましくないと判断しました。そこで、ブラウザ内ですべての処理が完了し、即座に読み込み、あなたの作業の邪魔をしないテキストケース変換ツールを作りました。
仕組み
変換処理そのものは、意図的に平凡です。入力パネルにテキストを貼り付けるか入力して、12種類の形式ボタンのどれかをクリックします。出力はその場で更新され、送信ボタンもスピナーもページの再読み込みもありません。内部的には、単純な JavaScript が少数の正規表現による変換を入力文字列に適用しているだけです。
処理がブラウザ内で行われるため、このツールは速いノートパソコンでも5年落ちのスマートフォンでも同じように動き、ページを読み込んだ後はオンラインでもオフラインでも同じ挙動です。入力パネルは入力するたびに単語数、文字数、文数、行数、概算の読了時間と概算の発話時間を表示するので、文字数制限のある作業に便利です。
12種類の形式
- 大文字 — 略語、見出し、短いラベルに。
- 小文字 — 入力の統一やコピーを柔らかくするのに。
- キャピタルケースとタイトルケース — 表示用コピー、見出し、タイトルに。
- 文頭大文字 — 各文の先頭だけ大文字にする段落やキャプションに。
- camelCase — JavaScript の変数名やクラス名に。
- snake_case — Python、データベースのカラム名、多くのコードベースの環境変数に。
- kebab-case — CSS クラス、HTML 属性、URL スラグに。
- dot.case — 設定キーと i18n の翻訳ファイルに。
- CONSTANT_CASE — 環境変数と定数に。
- 逆ケースと交互ケース — 楽しみたいときに。
形式ガイドでそれぞれの用途を説明し、よく寄せられる質問にはよくある質問でショートカットやエッジケースを解説しています。
プライバシーを後回しにしない
変換をローカルで行うという判断は、デザインを決める前の段階で出されていました。今まで覆したことはありません。テキストはどこにも送られず、ログに書き込まれず、サーバーに保存されず、分析のために順番待ちにされることもありません。残るのは、あなたのブラウザ内の変換履歴だけであり、ワンクリックで消去できます。
この原則があるおかげで、プライバシーポリシーは汎用テンプレートではなく、短く具体的な内容になっています。収集するものがほとんどないため、開示する内容もほとんどありません。
技術構成
このサイトは Tailwind CSS でスタイルを整えた静的 Astro プロジェクトで、変換ロジックにはわずかなバニラ JavaScript を使っています。スケールさせるバックエンドも、保守するデータベースも、ブラウザへ配信するフレームワークのランタイムもありません。そのためページは速く、攻撃範囲は小さくphens、Web の一部に到達できないときでもツールは動き続けます。
私たちが大切にしていること
- 速さ。 ツールは瞬時に反応するべきです。即座でなければ、それは不具合です。
- 予測可能性。 同じ入力にはいつも同じ結果。賢い推測はしません。
- 抑制。 ポップアップも、インタースティシャルも、ダークパターンも、別のサイトへ誘うためだけの機能もありません。
- アクセシビリティ。 キーボード操作、見えるフォーカス表示、小さなスマートフォンからワイドディスプレイまで、どの画面でも使えるレイアウト。
お問い合わせ
バグに気づいたとき、対応していない形式に気づいたとき、ただ挨拶したいとき――いつでもご連絡ください。届いたものはすべて読んでおり、機能リクエストは次の開発内容に実際に反映されます。お問い合わせページから、または hello@casetoconvert.com にメールを送ってください。