The most transformative change in the Wikantik modernization effort was replacing the JSP-based server-rendered UI with a React single-page application.
The legacy JSP UI was tightly coupled to the Java backend — each page view required a full server round-trip, templates were scattered across multiple JSP files with embedded Java scriptlets, and adding new UI features required changes to both Java controllers and JSP templates. Modern AI agents interacting via MCP needed a clean REST API, not server-rendered HTML.
The migration was executed in a single coordinated effort:
wikantik-rest) — New servlet-based endpoints exposing page CRUD, search, authentication, and admin operations as JSONwikantik-frontend) — Vite-built React application with React Router for client-side navigationwikantik-http) — Server-side filter that serves index.html for all non-API routes, enabling client-side routing/app/ prefix, making the wiki serve directly from the root contextwikantik-rest — New REST endpointswikantik-http — SPA routing filter, CORS configurationwikantik-war — Vite build integration, static asset serving