From 47195f5eee7c7a49bcb4ebfe5f1b13d4e3e65d49 Mon Sep 17 00:00:00 2001 From: Nikita Vilunov Date: Sun, 1 Oct 2023 18:15:37 +0200 Subject: [PATCH] add crates/README.md --- crates/README.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 crates/README.md diff --git a/crates/README.md b/crates/README.md new file mode 100644 index 0000000..04909f2 --- /dev/null +++ b/crates/README.md @@ -0,0 +1,30 @@ +## Dependency diagram of the project + +```mermaid +graph TD; + lavina-->mgmt-api; + lavina-->projection-irc; + lavina-->projection-xmpp; + lavina-->lavina-core; + + projection-irc-->proto-irc; + projection-irc-->lavina-core; + + projection-xmpp-->proto-xmpp; + projection-xmpp-->lavina-core; + + sim-irc-->proto-irc; + sim-irc-->mgmt-api; + + sim-xmpp-->proto-xmpp; + sim-xmpp-->mgmt-api; + + workspace-->lavina; + workspace-->sim-irc; + workspace-->sim-xmpp; +``` + +A few rules: +- Only projections should be direct deps of `lavina`, there is no need to depend on `proto-*` crates. +- On the other hand, projections should not be dependencies of `sim-*` crates. +- `lavina-core` does not depend on protocol-specific crates.