How jumon000/swarm works
Event Logistics Swarm is a FastAPI service for event organizers: users authenticate, create events and manage participants, then request either a full or focused AI workflow and receive schedules, marketing content, communications, and analytics. The documented full workflow loads event context and participant data, runs scheduler, content, mail, and analytics stages, then saves results. The README describes capabilities beyond the sampled excerpts; those branches are represented at their documented module paths, while uncertain implementation-level links are omitted.
Main entry points: langgraph_workflow.py LangGraph workflow · models.py PostgreSQL data · main.py FastAPI app · auth_routes.py Authentication routes
Components 21
API and Access
- FastAPI app
app/main.py - Authentication routes
app/api/auth_routes.py - Authentication service
app/services/auth_service.py
Event Operations
- Event routes
app/api/event_routes.py - Participant routes
app/api/participant_routes.py - CSV import
app/services/csv_parser.py - Schedule service
app/services/schedule_service.py - Email service
app/services/email_service.py
Agent Workflow
- Agent routes
app/api/agent_routes.py - LangGraph workflow
app/orchestration/langgraph_workflow.py - Shared state
app/orchestration/state_schema.py - Scheduler agent
app/agents/scheduler_agent.py - Content agent
app/agents/content_agent.py - Mail agent
app/agents/mail_agent.py - Analytics agent
app/agents/analytics_agent.py
Persistence and Memory
- PostgreSQL data
app/database/models.py - Database sessions
app/database/session.py - Vector memory
app/memory/vector_store.py
Other components
- Organizer
- OpenAI API
- SMTP server
Connections 32
- Organizer → FastAPI app: sends requests
- FastAPI app → Authentication routes: dispatches auth
- FastAPI app → Event routes: dispatches events
- FastAPI app → Participant routes: dispatches participants
- FastAPI app → Agent routes: dispatches workflows
- Authentication routes → Authentication service: authenticates users
- Authentication routes → Database sessions: uses sessions
- Authentication service → PostgreSQL data: queries users
- Event routes → Database sessions: reads and writes
- Participant routes → Database sessions: reads and writes
- Participant routes → CSV import: parses uploads
- Agent routes → Database sessions: loads event data
- Agent routes → LangGraph workflow: runs workflow
- LangGraph workflow → Shared state: updates state
- LangGraph workflow → Vector memory: loads context
- LangGraph workflow → Scheduler agent: dispatches stage
- LangGraph workflow → Content agent: dispatches stage
- LangGraph workflow → Mail agent: dispatches stage
- LangGraph workflow → Analytics agent: dispatches stage
- Scheduler agent → Schedule service: generates schedule
- Mail agent → Email service: prepares and sends
- Email service → SMTP server: sends email
- Mail agent → PostgreSQL data: logs emails
- Content agent → OpenAI API: generates content
- Mail agent → OpenAI API: generates templates
- Scheduler agent → OpenAI API: requests generation
- Analytics agent → OpenAI API: requests insights
- LangGraph workflow → PostgreSQL data: saves results
- LangGraph workflow → Vector memory: stores summaries
- Event routes → PostgreSQL data: persists events
- Participant routes → PostgreSQL data: persists participants
- Authentication routes → PostgreSQL data: persists accounts