Last Updated: 4/7/2026
Changelog
This document tracks the progress and evolution of the “Where Did They Go?” project, a historical visualization tool for tracking population and infrastructure changes in Kansas.
Post-Sprint 5 Updates (2026)
County Population Heatmap
March 30, 2026
- Added visual heatmap overlay showing county population density over time
- Provides clearer insight into demographic shifts across Kansas counties
Healthcare Facilities
March 25-27, 2026
- Healthcare Data Visualization
- Added comprehensive healthcare facility locations across Kansas
- Facilities include hospitals, clinics, and other medical centers
- Interactive hover displays detailed facility information including:
- Facility name and type
- Address and contact information
- Bed capacity (for hospitals)
- Trauma center designation
- Legend System
- Dynamic legend appears in top-right corner when healthcare data is displayed
- Color-coded facility types with character markers for easy identification
Water Bodies
February-March 2026
- Rivers
- Added major river systems throughout Kansas
- Rivers render as natural water features on the map
- Integrated with filter system for selective display
- Lakes
- Added lake and reservoir locations
- Accurate geographical placement and sizing
Interstate Highway System
February 2026
- Added interstate highway visualization
- Highways display as distinct infrastructure layer
- Functional filter allows toggling interstate visibility
- Part of infrastructure group in filter system
Sprint 5
Public School Locations & School Info Box
- Public schools now display on the map when in County view
- Hovering over school markers displays an information box with detailed data:
- Building name and district information
- Building and organization numbers
- Education level (elementary, middle, high school)
- Opening date
- Homepage URL
- Complete address
- School data sourced from Kansas Department of Education (KSDE)
Filter Functionality
- Interactive filter panel on the right side of the interface
- Allows toggling visibility of multiple data layers:
- County lines
- Railroads
- Towns
- Census tracts
- Schools
- Healthcare facilities
- Interstate highways
- Rivers and lakes
- Filters automatically adjust based on zoom level (state vs. county view)
- Smooth fade-in/fade-out transitions when toggling filters
Town Population Display
- Town populations now visible on the map in County view
- Population data appears on hover in State view
- Historical population data tracking changes over time
Sprint 4
Modular Code Refactoring
- Restructured codebase to maximize efficiency and readability
- Organized data and functions by component for better maintainability
- Each data layer (borders, cities, railroads, tracts, schools) now has dedicated component
- Implemented registration API system for component lifecycle management
Enhanced Town Interaction
- Hovering over towns in State view now displays town names
- Improved user experience for identifying locations across Kansas
Historical Data Collection
- Gathered comprehensive historical town data spanning multiple decades
- Collected county-level crime statistics
- Obtained census tract food access data for demographic analysis
Stylized Railroad and Tract Visualization
- Railroads: Rendered as green dotted lines with dynamic width adjustment based on zoom level
- Census Tracts: Displayed as thin dotted red lines (visible in County view only)
- Both layers integrated with filter system for selective visibility
Sprint 3
Dynamic Data Rendering Based on Zoom Level
- Implemented zoom-responsive rendering system
- Clicking a county triggers transition to County view
- Additional data layers appear/disappear based on current zoom level
- Smooth viewBox transitions between State and County views (750ms duration)
Automated Timeline Playback
- Added play/pause button for timeline animation
- When active, timeline automatically advances in 10-year increments
- Advances every 3.5 seconds with automatic looping
- Visual toggle between play and pause icons
Census Tract Lines in County View
- Census tract boundaries display when zoomed into a specific county
- Tracts help visualize demographic and geographic subdivisions
- Filter toggle available for tract visibility
Sprint 2
Base Map of Kansas
- Created interactive SVG map of Kansas
- County borders rendered with click-to-zoom functionality
- Towns represented as red dots with accurate geographical positioning
- Implemented D3.js with Albers projection (scale: 14000, translate: [1150, 375])
- ViewBox: 1600x800 units for consistent scaling
Railway System Visualization
- Historical railroad lines displayed on the map
- Railroad data shows construction timeline
- Lines fade in/out based on year of operation
- Green styling distinguishes railways from other infrastructure
Timeline-Based Historical Changes
- Interactive timeline slider (1860-2020, 10-year increments)
- Dynamic updates to:
- County borders (historical boundary changes)
- Railroad network (expansion over time)
- Town locations and populations
- Smooth opacity transitions for appearing/disappearing features
Sprint 1
Project Foundation
- Specification Document: Comprehensive project requirements and design
- Functional requirements defined
- Technical architecture outlined
- Database diagram drafted
- Use cases documented
- Style Guide: Established coding standards and conventions
- Initial Data Gathering: Began collecting historical Kansas data including:
- County boundary data
- Town locations and population records
- Railroad construction timelines
- Geographic coordinate systems
Technology Stack
Frontend:
- Vue.js 3 (Composition API)
- D3.js for geospatial visualization and data binding
- Vite for build tooling
Data Formats:
- GeoJSON for geographic features (counties, railroads, tracts, water bodies)
- JSON for structured data (towns, schools, healthcare facilities)
Testing:
- Vitest for unit testing
- Component-based test coverage
Project Links
- Documentation Site: KSDS Where Did They Go Docs
- GitHub Repository: ksu-cs/development-project-ksds
- Project Wiki: GitHub Wiki