trypost/config/trypost.php
Paulo Castellano b2bf5c2059 feat: complete AI assistant with custom services and brand config
Baseline snapshot of custom AI implementation before Laravel AI SDK migration.

Includes:
- Custom services: GeminiTextGenerationService, TextGenerationService (OpenAI), ImageGenerationService, AudioGenerationService, VideoGenerationService
- IntentDetector for content moderation via keyword matching
- AI enums: Intent, Orientation, UsageType
- Blade prompt templates: system.blade.php, image.blade.php, video.blade.php
- AiMessage with content_html accessor (markdown rendering)
- AiUsageLog for monthly quota tracking per account
- PostAssistantController with regex-based [GENERATE_*] parsing
- WritingAssistantTab with markdown rendering, add-to-post, attachments
- Workspace brand fields (name, description, tone, voice_notes) in system prompt
- Session state block injected into prompts (thread counts, quota remaining)
- AttachmentCollector pattern will replace the regex approach in Phase 2
- Post comments with replies, emoji reactions, real-time via Echo
- Assets page with Unsplash + Giphy integrations
2026-04-16 09:25:08 -03:00

98 lines
2.9 KiB
PHP

<?php
declare(strict_types=1);
return [
/*
|--------------------------------------------------------------------------
| Self-Hosted Mode
|--------------------------------------------------------------------------
|
| When enabled, the application runs in self-hosted mode which skips
| payment/subscription requirements during onboarding.
|
*/
'self_hosted' => env('SELF_HOSTED', true),
/*
|--------------------------------------------------------------------------
| Google Authentication
|--------------------------------------------------------------------------
|
| Enable or disable "Login with Google" on the login and register pages.
| Disable this if you don't have Google OAuth credentials configured.
|
*/
'google_auth_enabled' => env('GOOGLE_AUTH_ENABLED', false),
/*
|--------------------------------------------------------------------------
| Social Platforms
|--------------------------------------------------------------------------
|
| Configure which social platforms are enabled in the application.
| Set to false to temporarily disable a platform (e.g., when credentials
| are revoked, expired, or pending approval).
|
*/
'platforms' => [
'linkedin' => [
'enabled' => env('LINKEDIN_ENABLED', true),
],
'linkedin-page' => [
'enabled' => env('LINKEDIN_PAGE_ENABLED', true),
],
'x' => [
'enabled' => env('X_ENABLED', true),
],
'tiktok' => [
'enabled' => env('TIKTOK_ENABLED', true),
],
'youtube' => [
'enabled' => env('YOUTUBE_ENABLED', true),
],
'facebook' => [
'enabled' => env('FACEBOOK_ENABLED', true),
],
'instagram' => [
'enabled' => env('INSTAGRAM_ENABLED', true),
],
'instagram-facebook' => [
'enabled' => env('INSTAGRAM_FACEBOOK_ENABLED', true),
],
'threads' => [
'enabled' => env('THREADS_ENABLED', true),
],
'pinterest' => [
'enabled' => env('PINTEREST_ENABLED', true),
],
'bluesky' => [
'enabled' => env('BLUESKY_ENABLED', true),
],
'mastodon' => [
'enabled' => env('MASTODON_ENABLED', true),
],
],
/*
|--------------------------------------------------------------------------
| AI Configuration
|--------------------------------------------------------------------------
|
| Configure which AI providers to use for content generation.
| Supported text providers: "gemini", "openai"
|
*/
'ai' => [
'text_provider' => env('AI_TEXT_PROVIDER', 'gemini'),
'image_provider' => env('AI_IMAGE_PROVIDER', 'gemini'),
'audio_provider' => env('AI_AUDIO_PROVIDER', 'elevenlabs'),
'video_provider' => env('AI_VIDEO_PROVIDER', 'gemini'),
],
];