How dooy/chatgpt-web-midjourney-proxy works
This is a Vue-based multimodal AI web client, with an optional Express service that supplies chat endpoints, authentication/configuration, upload handling, and API proxies. Users enter through routed ChatGPT, image, video, music, dance, or realtime-audio workspaces; those workspaces use API clients to reach configured AI services and present generated results. The README documents a broader set of model-specific capabilities than the sampled source confirms in detail, so those are represented by their existing workspace and API modules without asserting internal call sequences. The main proxy and chat paths are visible in the service excerpt; other provider wiring is less certain.
Main entry points: router/index.ts App router · src/index.ts HTTP service · draw.vue Image creation · music.vue Music creation
Components 22
User workspaces
- App router
src/router/index.ts - Chat and GPTs
src/views/chat/index.vue - Image creation
src/views/mj/draw.vue - Video creation
src/views/luma/video.vue - Music creation
src/views/suno/music.vue - Dance creation
src/views/viggle/dance.vue - Realtime audio
src/views/wav/realtime.vue
Client services
- API facade
src/api/index.ts - Chat API
src/api/chat.ts - Image APIs
src/api/mjapi.ts - Video APIs
src/api/luma.ts - Music APIs
src/api/suno.ts
Service backend
- HTTP service
service/src/index.ts - Chat processing
service/src/chatgpt/index.ts - Auth controls
service/src/middleware/auth.ts
State and media
- App and chat state
src/store/modules/chat/index.ts - Generation state
src/api/klingStore.ts - Local storage
src/utils/storage/index.ts - Audio capture tools
src/lib/wavtools/index.js
Other components
- User
- OpenAI-compatible API
- Media AI providers
Connections 24
- User → App router: opens workspace
- App router → Chat and GPTs: routes
- App router → Image creation: routes
- App router → Video creation: routes
- App router → Music creation: routes
- App router → Dance creation: routes
- App router → Realtime audio: routes
- Chat and GPTs → API facade: requests chat
- API facade → Chat API: exports
- Image creation → Image APIs: requests generation
- Video creation → Video APIs: requests generation
- Music creation → Music APIs: requests generation
- Realtime audio → Audio capture tools: captures audio
- API facade → HTTP service: posts chat requests
- HTTP service → Auth controls: checks access
- HTTP service → Chat processing: processes chat
- Chat processing → OpenAI-compatible API: requests completions
- HTTP service → OpenAI-compatible API: proxies API requests
- Image APIs → HTTP service: uses proxy routes
- Video APIs → Media AI providers: calls media services
- Music APIs → Media AI providers: calls music services
- Image creation → Generation state: reads generation state
- App and chat state → Local storage: persists preferences
- Music creation → Generation state: uses saved items