dynamic-graph v1.0.0
dynamic-graph
This will become a dynamic multilevel graph visualization for the browser.
A graph is a set of vertices and edges.
A graph visualization is a picture of a graph, as opposed to a mathematical or computer science representation.
A dynamic graph visualization adjusts the picture as vertices and edges are added and removed in real time.
dynamic-graph aims to be a web component encapsulating a dynamic multilevel force directed graph visualization, as described in this paper, but aimed at the browser, for easier dissemination.
This project is under active development (once again) as of November 2019. There's nothing to look at yet, but at least the tests are running.
Development
This project is under active development. See the wiki
for details, if you're interested in playing with this. A good place to start is reading
the paper, and spending a quick minute looking at the class diagram. You can also run the tests
using npm run-script build-test
to get an idea of what's supposed to work and what's not. But a way nicer way of doing it in Visual Studio Code is to install the
Mocha Sidebar.
Change Log
2019-11-11
- toJSON works now. No more extra or missing commas.
- Will have to revisit the layout. It doesn't change after being run once...
2019-11-10
- added and exposed .toJSON(bool recursive) to LayoutGraph
2019-11-09
- Builds and passes 21 tests.
- Working on a web component
- On an installed dev environment:
- requires sudo because port 443, be sure to run
./scripts/server/ssl/gen-key
to generate a key pair for ssl, which might require an additional installation of openssl, not sure right now. npm run-script web
npm run-script serve
- requires sudo because port 443, be sure to run
- On an installed dev environment:
2019-11-03
- Ha! An actual test runner... the Mocha Sidebar!
- I installed a new version of webpack, the error messages were helpful in getting the project to build again, but I haven't tested them yet, as I don't have the frontend code ready yet.
- I now have 13 unit tests. The layout engine works if you use pass 0 for the level. The recursive multilevel implementation isn't there yet, but this is enough to focus on getting something into the UI again.
- Most of the tests pass (but that's probably because I keep writing them one bug fix at a time...)
- Made a class diagram. The C++ access modifiers are kinda sloppy still, but the whole C++ is just for the calculation. I'll clean that up once I get it working.
2019-11-02
- added a single passing test.
- added a saner build script: it is now possible to build this project using
the commands
- npm install
- npm run-script build I decided against using a post hook install script after reading this.
- Added a small development server, tested on CentOS 8.
This requires sudo privileges, because https is required for web asembly.
- npm run-script serve, or
- sudo ./scripts/server/serve
- Hunted for a script to generate a self signed certificate that Firefox will accept.
2019-11-01
- Removed libraries marked via npm audit
- Touched up this readme
5 years ago