| Building and maintaining interactive visualization tools for computer science education
has historically required significant developer expertise, limiting the breadth of topics such
tools can cover and their longevity over time. Redux is an open-source web application
originally developed to address the lack of visualization tools for NP-completeness education.
This thesis presents substantial extensions to Redux that transform it from a narrowly
focused NP-completeness tool into a general-purpose platform for interactive computer
science education. Our contributions include a standardized backend API, support for
multiple visualization types per problem, automated transitive gadget highlighting, stepby-step algorithm execution, and a suite of reusable visualization templates. Together,
these contributions lower the barrier to contribution such that most students can add new
visualizations with minimal effort, enabling Redux to grow as a crowd-sourced knowledge
base spanning a broad range of computer science topics. Redux is accessible online via
redux.portneuf.cose.isu.edu.
Keywords: computer science education, algorithm visualization, web-based learning, NPcompleteness, extensible platform |