Development Central for the Clack Graphical Router Project

Clack is an open-source graphical router that is written in Java. Clack routers exist in virtual networks that are connected to the Internet, meaning your router processes and analyzes REAL Internet traffic. A lot of functionality already exists for Clack, but we are always looking for more people to help with development. Coding in Clack can be a surprisingly easy and fun experience. You can:
  1. Write modular components to add new networking functionality to Clack.

  2. Use Java GUI programming to create visualizations of router behavior or traffic passing through the router

  3. Create command-line programs that run on top of a Clack router to inspect/modify router state (e.g arp -a, ifconfig) or generate traffic to run through your virtual network (e.g. ping, wget)

The best way to learn about how to code with clack is to read the Clack Router Developer Docs and to work with the source code and javadocs found in the Downloads section of the main page. If you still have concerns after contacting these sources, feel free to email us.

Development Ideas

We've been working with Clack for some time now, and have a running list of ideas on what might be fun / useful to develop. If you do start working on one of these projects, let us know so we can make sure no work is duplicated! We can help you by providing specific topologies to test on.

Possible new components to create

Possible new Clack applications to create

Other Coding Needed for Clack

Non-Coding Development Needed