Vortex Dev Log #16 - The biggest update so far
The biggest update so far but unseen to users!
This week we concentrated on refactoring Vortex. Actually the refactor was going on for a month
Vortex has moved through a lot of product surface quickly: proposals, chambers, vetoes, delegation, factions, CM, active-governor status, feed, profiles, and era transitions. That pace produced working systems, but it also left too much logic sitting in route files and page components. The problem was that too many files were doing too many jobs at once.
The refactor was meant to break down huge files into smaller ones and getting rid of duplication.
On the server, repeated governance concepts now have clearer names and homes. Address identity, chamber identity, formation project display, proposal draft display, timeline snapshots, response shaping, veto math, delegation, governing thresholds, stability, and time formatting were pulled toward reusable helpers instead of staying scattered through Hono resources. The route modules still own HTTP surfaces, but less policy is buried directly inside request handlers.
On the web, the same cleanup happened from the user-interface side. Proposal pages now share more lifecycle, stage, veto, and list logic. My Governance, Human Nodes, profiles, chambers, feed, and factions use named helpers for derived presentation instead of recomputing the same facts locally. That makes future changes less fragile because the code now says what it is doing in one place.
The API client also got smaller. Faction endpoints and the shared command-posting path moved out of the main apiClient.ts file, while existing callers can keep importing through the same public facade. That gives us a path to keep splitting the client by domain without forcing noisy call-site churn.
The final cleanup pass organized web files by responsibility. Page support code now lives under clearer folders such as components, hooks, and proposal-specific groups like shared, list, veto, formation, and draft. The goal was not decorative structure. The goal was to make it obvious where a future change belongs.
The main result is that Vortex is now easier to audit. Governance truth has better names. Page modules are thinner. The server and web have clearer boundaries. The next engineering phase can spend less time untangling old decisions and more time changing the system deliberately.
Check yourself in our open-source repos:
https://github.com/humanode-network/vortex-simulator-web
https://github.com/humanode-network/vortex-simulator-server
A quick rundown:
- Thinned the largest server route modules by moving repeated governance logic into named helpers.
- Split repeated web page logic into tested UI/domain helpers for proposals, vetoes, chambers, feed, factions, human nodes, profiles, and My Governance.
- Broke faction API calls and command posting out of the oversized web API client while keeping the public client facade stable.
- Reorganized page support files into clearer components, hooks, and proposal-domain folders.
- Preserved behavior and data shape: this refactor does not require a production data rewrite.