How cyaniagent/asagity works
Asagity is a federated social platform with a React client and two server implementations: the Go Verse Engine and ASP.NET Core Verse API. The main user journey is entering the client, navigating social pages, and using server-backed social or drive features. The README also documents topics, federation, and customizable widget-like UI. The graph reflects wiring visible in sampled entrypoints; endpoint-level calls and several documented capabilities were not sampled, so those connections are intentionally limited.
Main entry points: app.go Engine application · bus.go Event bus · ClientLayout.tsx Client layout · routes.tsx Page routing
Components 25
Client experience
- React application
web/src/App.tsx - Client layout
web/src/components/layout/ClientLayout.tsx - Page routing
web/src/lib/routes.tsx - Social pages
web/src/components/post/TimelineFeed.tsx - Drive pages
web/src/pages/drive/page.tsx - Window widgets
web/src/components/windows/WindowManager.tsx - API client
web/src/lib/api.ts
Social platform
- Notes and topics
core/src/Verse.Engine/internal/module/note - Follow graph
core/src/Verse.Engine/internal/module/follow - Accounts
core/src/Verse.Engine/internal/module/user - Authentication
core/src/Verse.Engine/internal/module/auth - Instance services
core/src/Verse.Engine/internal/module/instance - ActivityPub integration
core/src/Verse.Engine/internal/app/connections/activitypub
Server services
- Engine daemon
core/src/Verse.Engine/cmd/verse-engine/main.go - Engine application
core/src/Verse.Engine/internal/app/app.go - Cloud drive
core/src/Verse.Engine/internal/module/drive - Asset handling
core/src/Verse.Engine/internal/module/asset - Verse API host
core/src/Verse.Api/Program.cs - API domain modules
core/src/Verse.Modules
Shared runtime
- Event bus
core/src/Verse.Engine/internal/platform/event/bus.go - Live updates
core/src/Verse.Engine/internal/platform/ws/server.go - Database clients
core/src/Verse.Engine/internal/platform/database/database.go - Note search
core/src/Verse.Engine/internal/platform/search/bleve.go
Other components
- Visitor
- Federated servers
Connections 28
- Visitor → React application: opens
- React application → Client layout: renders
- Client layout → Page routing: hosts
- Page routing → Social pages: routes to
- Page routing → Drive pages: routes to
- Client layout → Window widgets: mounts
- Social pages → API client: requests data
- Drive pages → API client: requests data
- API client → Engine daemon: HTTP requests
- Engine daemon → Engine application: starts
- Engine application → Notes and topics: registers
- Engine application → Follow graph: registers
- Engine application → Accounts: registers
- Engine application → Authentication: registers
- Engine application → Cloud drive: registers
- Engine application → Asset handling: registers
- Engine application → Instance services: registers
- Engine application → Event bus: initializes
- Engine application → Live updates: starts
- Live updates → Event bus: subscribes
- Engine application → Database clients: uses clients
- Engine application → Note search: initializes
- Notes and topics → Note search: uses
- Notes and topics → Event bus: publishes events
- Follow graph → Event bus: publishes events
- Verse API host → API domain modules: registers services
- ActivityPub integration → Federated servers: federates with
- Instance services → Federated servers: instance links