
NeuraVisionが提供するもの
NeuraVisionは、AIコンテンツ生成製品のバックエンドエンジンです。このリポジトリには、メンバーダッシュボード、バックエンドAPI、認証、自ホスト型の分析およびトラフィック分割トラッカー向けのサーバーサイドロジックが含まれています。
このエクスポートに含まれるのはコードのみです。ランディングページ、マーケティングコンテンツ、メディア、ダッシュボードのアセット、環境ファイル、データベース、ユーザーが送信したファイルは含まれていません。
プロジェクト構成
主なディレクトリは、特定のバックエンド機能に対応しています。
api/には、ダウンロード、生成リクエスト、OAuth、課金用のバックエンドエンドポイントが含まれています。functions/には、認証、メール、SMS、Captcha、レビュー用の共有PHPヘルパーが含まれています。lk/には、メンバーダッシュボードのバックエンドロジックが含まれています。auth/、auth.php、register.php、logout.phpは、ログイン、登録、GoogleまたはTwitterのOAuthフローを実装しています。chat/には、サポートチャットウィジェットのバックエンドが含まれています。data/には、キャンペーン送信とCAPIリレー用のスケジュールジョブが含まれています。a/には、自ホスト型分析コレクターと位置情報検索ロジックが含まれています。PHPMailer/には、同梱されたメールライブラリが含まれています。
サブシステムごとの説明については、ENGINE.mdを参照してください。稼働するエンジンコンポーネントと、デモまたはリード獲得専用の領域を説明しています。
要件と設定
NeuraVisionは、nginxまたはApacheの背後でPHP 7.4以降を使用して動作します。ストレージにはSQLiteを使用し、ビルド手順は必要ありません。
設定は環境変数で指定します。リポジトリには.env.exampleが含まれており、広告プラットフォーム、SMTPまたはResend、hCaptcha、Telegramボットのサービス認証情報など、必要な設定を記載しています。
設定キーを空にすると、関連機能が無効になります。そのため、デプロイに必要なサービスだけを設定できます。実際の.envファイルやAPI認証情報をソース管理にコミットしないでください。
インストールと初期設定
- サーバーまたは開発マシンにリポジトリを取得します。
- サンプル設定ファイルをローカルの環境ファイルにコピーします。
cp .env.example .env.envを開き、使用するサブシステムに必要なキーを入力します。関連する変数名を確認するには、ENGINE.mdとコード全体のgetenv(...)呼び出しを参照してください。- プロジェクトディレクトリからPHP組み込み開発サーバーを起動します。
php -S 127.0.0.1:8000デプロイ時は、組み込み開発サーバーを使用せず、PHP-FPMとnginxまたはApacheがプロジェクトフォルダーを参照するように設定してください。
SQLiteストレージ
data/以下のSQLiteデータベースは、アプリケーションが最初のリクエストを受信すると自動的に作成されます。各モジュールはCREATE TABLE IF NOT EXISTSを使用するため、セットアップ時に個別のスキーマインポート手順はありません。
生成されたデータベースには、ユーザーアカウント、トラッカーイベント、レビューなどのアプリケーションデータが含まれる場合があります。データベースファイルはリポジトリのエクスポートに含まれていないため、ソースコードではなくデプロイデータとして扱ってください。
基本的な使用方法
バックエンドをローカルで起動する
環境を設定したら、ローカルサーバーを起動します。
php -S 127.0.0.1:8000その後、ローカルアドレスからアプリケーションにアクセスし、設定に応じて利用できる認証、ダッシュボード、API、チャット、分析の各フローを実行します。
認証を設定する
GoogleまたはTwitterログインに必要なOAuth関連の環境変数を設定します。認証のエントリーポイントにはauth/、auth.php、register.php、logout.phpがあります。デプロイでプロバイダーを使用しない場合は、オプションの認証情報を空のままにしてください。
サービス連携機能を有効にする
必要な連携のみを設定してください。たとえば、メール配信には適切なSMTPまたはResendの設定が必要です。一方、Captcha、Telegram、広告プラットフォーム、CAPIの機能には、それぞれの認証情報が必要です。キーが存在しない、または空の場合、これらのオプション機能は無効になります。
高度な設定と運用
設定をサブシステムに対応付ける
すべての環境変数を必須と考えないでください。まず.env.exampleを確認し、次にENGINE.mdを使って、API、認証、スケジュールジョブ、分析コレクター、通信機能のどれに各キーが属するかを判断します。これによりデプロイを最小限に抑え、トラブルシューティングに集中できます。
コードのみのエクスポートを理解する
このリポジトリには、画像、動画、CSS、JavaScriptなど、メンバーダッシュボードのビジュアルアセットは意図的に含まれていません。また、ランディングページと法的ページ、メディア、フォント、多言語化用テキスト、アップロードファイル、チャットセッション、チャット履歴、OAuth状態ファイル、SQLiteデータベースも含まれていません。エンジンを完全な製品に統合する際は、これらのリソースを別途用意または保持する計画を立ててください。
適切なホスティングモデルを使用する
ローカルテストにはphp -Sを使用します。サーバーにデプロイする場合は、PHPアプリケーションをPHP-FPMとともにnginxまたはApacheの背後で実行し、リポジトリに秘密情報をハードコードせず、サーバーの設定を通じて環境変数を提供してください。
リリース前に機能の状態を確認する
プロジェクトのドキュメントでは、実際に動作するエンジンコンポーネントと、デモまたはリード獲得専用の機能を区別しています。本番環境でサブシステムを利用する前に、特に生成リクエスト、課金、分析、スケジュールジョブに関する連携を計画している場合は、ENGINE.mdを確認してください。
結論
NeuraVisionは、SQLiteストレージ、環境ベースの設定、認証、API、ダッシュボードロジック、通信、スケジュール済みジョブ、セルフホスト型分析機能を備えたPHP 7.4以降のバックエンドを提供します。開始するには、.env.exampleをコピーし、必要なサービスを設定してローカルテスト用にPHPサーバーを起動します。初回のリクエスト時に、アプリケーションがSQLiteテーブルを作成します。サブシステムの境界とデプロイの準備状況を理解するには、ENGINE.mdを使用してください。
