aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhozan23 <hozan23@proton.me>2023-11-22 21:48:09 +0300
committerhozan23 <hozan23@proton.me>2023-11-22 21:48:09 +0300
commitd4c8251ea3c4f6e809bb19f8faa907083316f483 (patch)
tree5b2409cb338f4c1f46029b27c94f0bcfe5b02fec
parent34b0a91dbb107962dae4f593a36d30a29ea87c45 (diff)
add Docs section to README.md file & add an example to p2p crate
-rw-r--r--Cargo.toml2
-rw-r--r--README.md10
-rw-r--r--p2p/src/backend.rs34
-rw-r--r--p2p/src/lib.rs37
4 files changed, 47 insertions, 36 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 4d85f3f..493e348 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -5,7 +5,6 @@ members = [
"p2p",
"jsonrpc",
]
-
resolver = "2"
[workspace.package]
@@ -17,3 +16,4 @@ karyons_core = { path = "core" }
karyons_net = { path = "net" }
karyons_p2p = { path = "p2p" }
karyons_jsonrpc = { path = "jsonrpc" }
+
diff --git a/README.md b/README.md
index 28b2ddc..0e2bd97 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@ Join us on:
along with common network functionality.
- [karyons p2p](./p2p): A lightweight, extensible, and customizable
peer-to-peer (p2p) network stack.
-- [karyons jsonrpc](./jsonrpc): A fast and lightweight async
+- [karyons jsonrpc](./jsonrpc): A fast and small async
[JSONRPC2.0](https://www.jsonrpc.org/specification) implementation.
- karyons crdt: A [CRDT](https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type)
implementation for building collaborative software.
@@ -29,6 +29,14 @@ crdt and karyons store, along with major changes to the network stack,
including TLS implementation. You can check the
[issues](https://github.com/karyons/karyons/issues) for updates on ongoing tasks.
+## Docs
+
+To generate karyons Rust API Documentation, run the following command:
+
+```bash
+$ cargo doc --no-deps --all --document-private-items --open
+```
+
## Thanks
Big thanks to [Ink & Switch](https://www.inkandswitch.com/) team,
diff --git a/p2p/src/backend.rs b/p2p/src/backend.rs
index bb0d891..4410205 100644
--- a/p2p/src/backend.rs
+++ b/p2p/src/backend.rs
@@ -20,40 +20,6 @@ pub type ArcBackend = Arc<Backend>;
/// the P2P network.
///
///
-/// # Example
-/// ```
-/// use std::sync::Arc;
-///
-/// use easy_parallel::Parallel;
-/// use smol::{channel as smol_channel, future, Executor};
-///
-/// use karyons_p2p::{Backend, Config, PeerID};
-///
-/// let peer_id = PeerID::random();
-///
-/// // Create the configuration for the backend.
-/// let mut config = Config::default();
-///
-///
-/// // Create a new Executor
-/// let ex = Arc::new(Executor::new());
-///
-/// // Create a new Backend
-/// let backend = Backend::new(peer_id, config, ex.clone());
-///
-/// let task = async {
-/// // Run the backend
-/// backend.run().await.unwrap();
-///
-/// // ....
-///
-/// // Shutdown the backend
-/// backend.shutdown().await;
-/// };
-///
-/// future::block_on(ex.run(task));
-///
-/// ```
pub struct Backend {
/// The Configuration for the P2P network.
config: Arc<Config>,
diff --git a/p2p/src/lib.rs b/p2p/src/lib.rs
index 3cf1e7c..c0a3b5b 100644
--- a/p2p/src/lib.rs
+++ b/p2p/src/lib.rs
@@ -1,3 +1,40 @@
+//! A lightweight, extensible, and customizable peer-to-peer (p2p) network stack.
+//!
+//! # Example
+//! ```
+//! use std::sync::Arc;
+//!
+//! use easy_parallel::Parallel;
+//! use smol::{channel as smol_channel, future, Executor};
+//!
+//! use karyons_p2p::{Backend, Config, PeerID};
+//!
+//! let peer_id = PeerID::random();
+//!
+//! // Create the configuration for the backend.
+//! let mut config = Config::default();
+//!
+//!
+//! // Create a new Executor
+//! let ex = Arc::new(Executor::new());
+//!
+//! // Create a new Backend
+//! let backend = Backend::new(peer_id, config, ex.clone());
+//!
+//! let task = async {
+//! // Run the backend
+//! backend.run().await.unwrap();
+//!
+//! // ....
+//!
+//! // Shutdown the backend
+//! backend.shutdown().await;
+//! };
+//!
+//! future::block_on(ex.run(task));
+//!
+//! ```
+//!
mod backend;
mod config;
mod connection;