about summary refs log tree commit diff
path: root/util
diff options
context:
space:
mode:
authorVika <vika@fireburn.ru>2022-05-07 20:28:43 +0300
committerVika <vika@fireburn.ru>2022-05-07 20:28:43 +0300
commit139b7ec10bc7f08dae9bd57eef8eff73fbb22061 (patch)
tree973c4d903e731cb5e38b682f22c38c3da1dbcd92 /util
parent0679de841840c74ab49f54905783fac1faf028e1 (diff)
Split into different crates
Templates and utility types are now separate crates to speed up
compilation, linting and potential reuse/replacement.

Potentially more crates could be split out/modularized, resulting in
speedups, smaller binaries (whenever features are excluded) and even
more reuse capabilities.
Diffstat (limited to 'util')
-rw-r--r--util/Cargo.toml12
-rw-r--r--util/src/lib.rs18
2 files changed, 30 insertions, 0 deletions
diff --git a/util/Cargo.toml b/util/Cargo.toml
new file mode 100644
index 0000000..31c6bca
--- /dev/null
+++ b/util/Cargo.toml
@@ -0,0 +1,12 @@
+[package]
+name = "kittybox-util"
+version = "0.1.0"
+edition = "2021"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+[dependencies.serde]         # A generic serialization/deserialization framework
+version = "^1.0.125"
+features = ["derive"]
+
diff --git a/util/src/lib.rs b/util/src/lib.rs
new file mode 100644
index 0000000..bc41689
--- /dev/null
+++ b/util/src/lib.rs
@@ -0,0 +1,18 @@
+use serde::{Deserialize, Serialize};
+
+#[derive(Clone, Serialize, Deserialize)]
+pub struct IndiewebEndpoints {
+    pub authorization_endpoint: String,
+    pub token_endpoint: String,
+    pub webmention: Option<String>,
+    pub microsub: Option<String>,
+}
+
+/// Data structure representing a Micropub channel in the ?q=channels output.
+#[derive(Serialize, Deserialize, PartialEq, Debug)]
+pub struct MicropubChannel {
+    /// The channel's UID. It is usually also a publically accessible permalink URL.
+    pub uid: String,
+    /// The channel's user-friendly name used to recognize it in lists.
+    pub name: String,
+}