Skip to content

Commit 312a6ab

Browse files
authored
[README.md] Update plans (much clearer now)
1 parent 70a1a50 commit 312a6ab

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

README.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,19 @@ cdd-rust
55
[![License: (Apache-2.0 OR MIT)](https://img.shields.io/badge/LICENSE-Apache--2.0%20OR%20MIT-orange)](LICENSE-APACHE)
66
[![CI](https://github.com/offscale/cdd-rust/actions/workflows/ci-cargo.yml/badge.svg)](https://github.com/offscale/cdd-rust/actions/workflows/ci-cargo.yml)
77

8-
Update: future of this repo remains unclear. One direction different to the Python and C cdd implementations is to go from SQL to diesel to diesel functions (https://github.com/SamuelMarks/dsync). Then use https://github.com/rust-lang/rust-analyzer to go from those Diesel models to/fro actix to/fro tests & mocks to/fro OpenAPI (utoipa).
8+
Update: future of this repo remains unclear. Probably restart, delete all [non `.git`] files|folders and do a `cargo init`. One direction—different to the [Python](https://github.com/offscale/cdd-python) and [C](https://github.com/SamuelMarks/cdd-c) [cdd](https://compilers.com.au) implementations—is to go from:
9+
10+
0. SQL to [diesel](https://diesel.rs) ([`diesel::table!`](https://docs.rs/diesel/latest/diesel/macro.table.html));
11+
1. [`diesel::table!`](https://docs.rs/diesel/latest/diesel/macro.table.html) to diesel `struct`s and functions (https://github.com/SamuelMarks/dsync); then
12+
2. Diesel `struct`s to/fro [JSON-schema](https://json-schema.org/specification) via a new custom parser/emitter (compiler) written with https://github.com/rust-lang/rust-analyzer
13+
14+
Next, realise [JSON-schema](https://json-schema.org/specification) as part of a greater [OpenAPI](https://spec.openapis.org/oas/latest.html), and implement custom [rust-analyzer](https://github.com/rust-lang/rust-analyzer) parser/emitter code to go from/to:
15+
16+
3. [actix](https://actix.rs);
17+
4. tests & mocks;
18+
5. OpenAPI [dynamic: [utoipa](https://github.com/juhaku/utoipa); static: custom].
19+
20+
---
921

1022
OpenAPI ↔ Rust. Compiler Driven Development (CDD) is a new development methodology, with implementations in many languages.
1123

0 commit comments

Comments
 (0)