# graph-extra

Convenience functions and random graph generator for working with elm-community/graph.

The package exposes three modules

1. Graph.Extra : Convenience functions for Graph type
2. Graph.Tree.Extra : Convenience functions for Graph.Tree type
3. Random.Graph : Random Generators for Graph type

Check end-to-end example code in the `examples/` folder.

## Future Work

- [ ] Write Test cases using elm-test.
- [ ] Use elm-explorations/benchmark to benchmark the performance of all modules.
- [ ] Add more algorithms (like problem types 8,9,10 in [this blog](https://towardsdatascience.com/10-graph-algorithms-visually-explained-e57faa1336f3))
  - [ ] Graph Colouring (Algorithm #8)
  - [ ] Max Flow (Algorithm #9)
  - [ ] Matching (Algorithm #10)
