Date: 2026-03-13 Application Type: Single-part Classic ASP web application
tracking_kits is a server-rendered IIS application that manages operational workflows around election mail pieces. It combines browser-driven CRUD screens with file-system side effects and batch automation. The architecture is straightforward but environment-sensitive: controllers render views and call repositories, while proofs, inkjet exports, and tracking exports rely on COM libraries, report templates, and Windows file shares.
index.asp redirects to ../App/Controllers/Home/HomeController.asp.Routes.Initialize "/App/" from ../App/app.config.asp establishes route resolution for controller files under App/..asp view templates.DAL.Query, DAL.Execute, and DAL.PagedQuery.App/Controllers/*.App/Views/*.App/ViewModels/*.App/Views/Shared/.This layer is synchronous and page-oriented. There is no client-side SPA architecture in the codebase.
Controller actions contain most orchestration logic. Key examples:
HomeController.CreateKit and HomeController.Search drive jurisdiction lookup for kit creation.KitController.SwitchBoardIndex and SwitchBoardPurpleEnvelopsIndex drive operational dashboards.KitController.ExportTrackingLabels renders a report to PDF and moves it into an export folder.KitController.ExportSnailWorksTracking writes CSV exports from repository-provided data.App/DAL/lib.DAL.asp.App/DomainModels/ contain raw SQL and map records into model classes.Data/Migrations.The MVC/ directory provides reusable infrastructure:
lib.MVC.asp and lib.Routes.asp for dispatch/routinglib.Automapper.asp for record/form mappinglib.HTMLSecurity.asp for anti-CSRF helperslib.Flash.asp, lib.FormCache.asp, lib.Helpers.asp, lib.Collections.asp, and related helpersThis shared code is effectively the application's internal framework.
ImportService/TrackingDataImport.vbs handles import/export/proof workflows outside HTTP requests.The schema is migration-driven. Core tables inferred from migrations and repositories:
JurisdictionContactSettingsKitKit_Labels / KitLabelsInkJetRecordsCustomOfficeCopyJobColorsRelationships are implied through foreign-key migrations and repository joins, especially around kits, labels, inkjet records, contacts, and jurisdictions.
This app exposes controller-action routes rather than a versioned API. The practical contract surface is:
Home, Kit, Jurisdiction, Contacts, Settings, InkjetRecords, and CustomOfficeCopyJobThere is no evidence of JSON APIs being a primary integration mechanism.
ImportService/TrackingDataImport.vbs.Data/Migrations and update the affected repository/model classes.App/app.config.asp, import scripts, and any hard-coded paths or COM usage.Generated for brownfield analysis.
Powered by TurnKey Linux.