Skip to content

phpeterson-usf/golden-gates

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is it

Golden Gates is a web app intended to help computer science students learn the fundamentals of digital design.

Why another digital design tool?

I’ve used some other tools, which worked ok. However, I wanted a tool with a smooth modern UI, adding live collaboration, usable on any computer with a browser, at no cost to students.

How to use it

Basics Golden Gates uses a drag-and-drop UI to place logic gates, wires, and composite components onto a circuit Larger circuits can be composed of smaller circuits Once a circuit is laid out, you can simulate its behavior using input and output components Multiple circuits can be shown at once, both while editing and simulating. Therefore, you can watch how a child circuit runs while also watching its parent Projects A project is composed of multiple circuits. Projects are intended to be gradable assignments in a classroom environment You can share projects, and everyone who has the project open can collaborate on the circuit’s design

How it works

Single Page App written in React and Typescript, rendering circuits in SVG Docker container containing A web server written in Typescript, using the Express.js server framework and nginx proxy/load balancer RethinkDB for document storage and live collaboration Golden Gates is generously hosted by cs.usfca.edu, where I teach

About

Circuit simulation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published