Skip to content

hiroto172516/Filesmith

Repository files navigation

Filesmith

Filesmith は、開発、テスト、バリデーションなどで必要となるダミーファイル(テストファイル)を即座に生成し、ダウンロードできるモダンな Web アプリケーションです。さまざまなファイルフォーマットとカスタムパラメータに対応しており、開発者の作業効率を劇的に向上させます。


🚀 主な機能

  • 豊富なファイル形式に対応: テキスト、データ、画像、動画、アーカイブなど、様々なダミーファイルを数クリックで作成できます。
  • カスタムパラメータ指定: ファイルサイズや行数、解像度、ページ数など、テストシナリオに合わせた詳細な設定が可能です。
  • クライアントサイド生成: Canvas や Blob API を活用し、一部の形式はサーバー負荷をかけずクライアント側で高速に生成されます。
  • アカウント管理 & 履歴: サインインすることで、生成したファイルの履歴管理や、よく使う設定を「プリセット」として保存できます。
  • プラン管理(Stripe 連携): Pro プランにアップグレードすることで、一日の生成制限を解除し、大容量のファイル生成が可能になります。

📁 サポートしているファイルフォーマット

カテゴリ フォーマット 主な設定パラメータ 生成の仕組み
テキスト txt ファイルサイズ (KB, MB等) 指定サイズ分のダミーテキストの繰り返し
データ csv / json 行数・列数、レコード数 テスト用のランダム/連番データの構造化出力
画像 png / jpeg / gif 幅、高さ、背景色、グリッド/ソリッドパターン Canvas API を用いた動的な画像描画
シミュレーション pdf / zip / mp4 ページ数、ファイル数、再生時間、解像度 ダミーヘッダーとコンテンツを模した構造化データの生成

🛠 技術スタック

  • フロントエンド: React 18, Vite, TypeScript
  • スタイリング: Tailwind CSS, PostCSS, Lucide React (アイコン)
  • バックエンド / データベース: Supabase (認証、データベース、プロフィール管理)
  • 決済プラットフォーム: Stripe (サブスクリプション・Proプラン決済)

💻 開発環境のセットアップ

プロジェクトをローカルで実行するための手順です。

1. 依存関係のインストール

プロジェクトのルートディレクトリで以下のコマンドを実行します。

npm install

2. 環境変数の設定

.env.example をコピーして .env ファイルを作成し、必要なAPIキーを設定します。

cp .env.example .env

.env に以下の項目を入力してください:

# Supabase Configuration
VITE_SUPABASE_URL=あなたのSupabaseのURL
VITE_SUPABASE_ANON_KEY=あなたのSupabaseのAnonキー

# Stripe Configuration
VITE_STRIPE_PUBLISHABLE_KEY=あなたのStripeパブリッシャブルキー

3. 開発サーバーの起動

開発用ローカルサーバーを起動します。デフォルトでは http://localhost:5173 で起動します。

npm run dev

4. プロダクションビルドの作成

本番環境用のビルドを作成する場合は以下のコマンドを実行します。

npm run build

ビルドされたファイルは dist ディレクトリに出力されます。


📁 ディレクトリ構造

Filesmith/
├── .bolt/             # 開発環境用設定
├── supabase/          # Supabase の設定ファイル・マイグレーション等
├── src/
│   ├── components/    # UIコンポーネント (Generator, History, Modals等)
│   ├── hooks/         # カスタムフック (Auth, Subscription, Presets)
│   ├── lib/           # Supabaseなどの初期化ロジック
│   ├── utils/         # ユーティリティ関数
│   ├── App.tsx        # アプリケーションのメインエントリー
│   └── main.tsx       # レンダリングエントリー
├── package.json
└── vite.config.ts

📄 ライセンス

このプロジェクトは MIT ライセンスのもとでオープンソースとして公開されています。詳細については LICENSE ファイルを参照してください。

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors