Skip to content

Derek-Fox/descry.tech

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Descry: A Visual Approach to Algorithm Education

Abstract

Descry is a web-based platform designed to teach algorithms through interactive visual programs. Our project was inspired by the challenges associated with learning computer science, particularly in understanding complex algorithms. Utilizing Node.js, React, and Docker for frontend development and deployment, along with Java and Processing for the creation of executable JAR files to visualize algorithms, Descry aims to bridge the gap between theoretical concepts and practical application.

1. Introduction

Algorithm education is a critical aspect of computer science, as it forms the foundation for efficient problem solving and data manipulation. However, many students struggle to grasp the concepts and inner workings of algorithms due to their abstract nature. Descry was developed to address this issue, providing a website that offers visual demonstrations and explanations of various algorithms, making them more accessible and understandable.

2. How we built it

2.1 Frontend Development and Deployment

The frontend of Descry was built using Node.js and React, providing a seamless user interface for efficient navigation through the platform. Docker was employed for containerization and deployment, ensuring that the platform can be consistently and reliably run across different environments.

2.2 Algorithm Visualization Programs

To offer an interactive learning experience, the Descry includes executable JAR files, created using Java and the Processing library. Our team developed a wrapper utility that allows easy implementation of the Processing in order to visualize algorithms. These files, when downloaded and run on a user's computer, provide visual demonstrations of various algorithms, enabling users to visualize their function and better understand their underlying principles.

3. Conclusion

Descry serves as an innovative approach to algorithm education, offering an interactive, visual platform that makes complex concepts more accessible. The project highlights the importance of collaboration, communication, and adaptability in overcoming the challenges of diverse skill sets and limited experience working together. As a result, Descry not only provides an invaluable learning resource but also stands as a testament to the potential of interdisciplinary teamwork in software development.

Quickstart Guide \ Debian

git clone https://github.com/Derek-Fox/descry.tech.git
mv descry.tech/descry-update.sh .
bash descry-update.sh

Access this on http://localhost:3005 once it is installed

How it's made

This is a react website that is packaged in a docker container and the script will compile the container locally with the name and tag 'descry' then run that container. This makes deployment and scalability very easy as NPM can be a bit tricky but the docker file takes care of all of that.

About

Website hosting algorithm visualizations, launched in Processing.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors