From f94edc53710b5ef9554f59640e97f2623beaea87 Mon Sep 17 00:00:00 2001 From: Aloizio Macedo Date: Mon, 1 Jan 2024 18:44:56 -0300 Subject: [PATCH 1/3] Update README.md --- README.md | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1ffea7e..15663f2 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,35 @@ ![Linting](https://github.com/AloizioMacedo/yagraphc/actions/workflows/linting.yml/badge.svg?branch=master) ![Doc Tests](https://github.com/AloizioMacedo/yagraphc/actions/workflows/doctests.yml/badge.svg?branch=master) -Graph library that aims to implement the main graph algorithms and functionalities. +Crate for working with Graph data structures and common algorithms on top of it. + +The main focus of this crate is **functionality**. Performance is appreciated but +not the main priority. It is intended to fill the gaps in terms of what is not +currently available in the ecosystem. As an example, it is not easy to find +a graph crate which finds a cycle basis of an undirected graph, while this +is trivial in Python's [NetworkX](https://networkx.org/). + +## Example + +```rust +use yagraphc::prelude::*; +use yagraphc::graph::UnGraph; + +let mut graph = UnGraph::default(); + +graph.add_edge(1, 2, 1); +graph.add_edge(2, 3, 3); +graph.add_edge(3, 4, 2); +graph.add_edge(1, 4, 10); + +assert_eq!(graph.dijkstra_with_path(1, 4), Some((vec![1, 2, 3, 4], 6))); +``` ## Goals before 1.0.0 -(Soon...) +The development will keep moving towards the following objectives. Once those +are reached, we will reevaluate how to move forward. + +- Main path-finding algorithms implemented +- Main max flow / min cut algorithms implemented +- Full test coverage From 9e486e9dc79d426db4564f489c19d821931e4574 Mon Sep 17 00:00:00 2001 From: Aloizio Macedo Date: Mon, 1 Jan 2024 18:45:04 -0300 Subject: [PATCH 2/3] Add contributing guidelines --- CONTRIBUTING.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..ec0abde --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,8 @@ +# Guidelines + +Feel free to open issues and PRs at your convenience. When contributing via PRs, +follow the guidelines below: + +- [ ] Add a description for the PR. +- [ ] Make sure public functions have doc-tests and are properly documented. +- [ ] Add tests and retain full coverage. From a506e56aff997898c46fa29d84ba5395cdc28c62 Mon Sep 17 00:00:00 2001 From: Aloizio Macedo Date: Mon, 1 Jan 2024 18:45:13 -0300 Subject: [PATCH 3/3] Change header of lib.rs --- src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index 31a5da5..e07fbd8 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,4 +1,4 @@ -//! # Introduction +//! # YAGraphC //! //! Crate for working with Graph data structures and common algorithms on top of it. //!