Skip to content

Commit 67875e8

Browse files
authored
Merge pull request #47 from G8XSU/rust-readme
Add README for Rust-based VSS implementation.
2 parents 9d7326a + ab5d53a commit 67875e8

File tree

2 files changed

+49
-2
lines changed

2 files changed

+49
-2
lines changed

rust/README.md

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,39 @@
1-
## WIP
2-
Not ready for use !!
1+
# Versioned Storage Service (Rust)
2+
3+
This directory hosts the Rust-based implementation of the Versioned Storage Service (VSS).
4+
5+
### Prerequisites
6+
7+
- Install Rust and Cargo (https://www.rust-lang.org/tools/install).
8+
- Install PostgreSQL 15 (https://www.postgresql.org/download/)
9+
10+
### Building
11+
12+
```
13+
git clone https://github.com/lightningdevkit/vss-server.git
14+
cd vss-server/rust
15+
16+
cargo build --release
17+
```
18+
19+
### Running
20+
1. **Edit Configuration**: Modify `./vss_server_config.toml` to set application configuration and
21+
environment variables as needed. Add PostgreSQL endpoint configuration.
22+
2. Create table in PostgreSQL using `./impls/src/postgres/sql/`
23+
3. Start server:
24+
```
25+
cargo run -- vss-server-config.toml
26+
```
27+
3. VSS endpoint should be reachable at `http://localhost:8080/vss`.
28+
29+
### Configuration
30+
31+
Refer `./vss_server_config.toml` to see available configuration options.
32+
33+
### Support
34+
35+
If you encounter any issues or have questions, feel free to open an issue on
36+
the [GitHub repository](https://github.com/lightningdevkit/vss-server/issues). For further assistance or to discuss the
37+
development of VSS, you can reach out to us in the [LDK Discord](https://discord.gg/5AcknnMfBw) in the `#vss` channel.
38+
39+
[LDK Discord]: https://discord.gg/5AcknnMfBw
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
CREATE TABLE vss_db (
2+
user_token character varying(120) NOT NULL CHECK (user_token <> ''),
3+
store_id character varying(120) NOT NULL CHECK (store_id <> ''),
4+
key character varying(600) NOT NULL,
5+
value bytea NULL,
6+
version bigint NOT NULL,
7+
created_at TIMESTAMP WITH TIME ZONE,
8+
last_updated_at TIMESTAMP WITH TIME ZONE,
9+
PRIMARY KEY (user_token, store_id, key)
10+
);

0 commit comments

Comments
 (0)