Tech stack and delivery manifest.
FreeWIS is a child welfare data system. Here’s what it’s built with and how to read the delivery manifest for an agency’s source package.
Tech stack
The case record, the chat interface, and the search indexes are separate parts of the system. Open any row to see how it fits.
Web applicationReact · Vite · Tailwind CSS · Node.js · nginx · Next.js
The casework application is a React web app built with Vite. A Node.js service handles sign-in and delivers documents and other artifacts to the browser. The public FreeWIS site is a separate Next.js application.
Dio and its toolsLibreChat · Anthropic Claude · Python · Model Context Protocol
Dio uses Claude through a FreeWIS fork of LibreChat. Python services expose tools over the Model Context Protocol (MCP) for case records, reference search, and compliance checks. In PLAY, Dio can show a proposed case record for the worker to confirm before it is written.
Case records and reportingAzure SQL · T-SQL · SQL Server Data Tools (SSDT)
The SQL database holds the case record. The schema uses composite foreign keys to tie coded fields to their allowed lists. Jurisdictions can maintain their own vocabularies alongside federal reporting values. A data dictionary describes fields and their mappings. The same relational model supplies reporting routines for AFCARS, NCANDS, and NYTD.
Search and messagingAzure AI Search · MongoDB Atlas · Meilisearch · Rocket.Chat
Azure AI Search supports regulatory reference search and conversation retrieval through separate indexes. MongoDB Atlas stores LibreChat history. LibreChat also uses Meilisearch for its own search. Team messaging uses a separate Rocket.Chat service.
Mobile app shellCapacitor · iOS · Android
The native iOS and Android shells load the same web application, so the casework interface lives in one codebase.
Hosting and buildsAzure Container Apps · Azure Pipelines · DACPAC
HCT runs the application services in containers on Azure. Azure Pipelines builds selected service images and packages the SQL schema as a DACPAC. A pull request check flags new hard-coded choice lists in the code it scans.
Delivery manifest
A GET package is a versioned source release for an agency’s own implementation. Its delivery manifest covers the categories below.
- Application source
- The application and supporting service code included in the release.
- SQL and database materials
- The schema and other database materials included in the release.
- Knowledge-base materials
- The reference material supplied for use with the knowledge base.
- Versions, dependencies, and exclusions
- The versions delivered, the dependencies they need, and the items excluded from that package.
Use the manifest for the specific release to confirm which components and versions it includes.
Your agency’s implementation
PLAY is HCT’s demonstration, configured with synthetic cases. A GET source package comes without a jurisdiction’s configuration. Your agency supplies its own hosting, sign-in, and AI access, and handles configuration, migration, validation, and ongoing operations.
See how to request FreeWIS through GET