Skip to content

Commit 690b677

Browse files
authored
docs: rework the readme (#91)
Re-organize the README and add some more content.
1 parent 096fe1a commit 690b677

File tree

1 file changed

+42
-25
lines changed

1 file changed

+42
-25
lines changed

README.md

Lines changed: 42 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,48 @@
55
Monorepo for Python Satellite Tasking API (STAPI) Specification packages.
66
For more, see our [docs](https://stapi-spec.github.io/pystapi/).
77

8+
> [!WARNING]
9+
> The STAPI spec, and these packages, are in their early stages of development.
10+
> There may be large shifts in the spec or these packages' APIs as we work towards a v1.0 release of the spec.
11+
12+
## Packages
13+
14+
There are several related packages in this monorepo:
15+
16+
```mermaid
17+
graph
18+
stapi-pydantic --> pystapi-client --> pystapi-validator
19+
stapi-pydantic --> stapi-fastapi
20+
```
21+
22+
### [stapi-pydantic](./stapi-pydantic/)
23+
24+
[Pydantic](https://docs.pydantic.dev) models for STAPI.
25+
These models are used to generate the STAPI OpenAPI specification, and so can be considered the source-of-truth for STAPI data structures.
26+
27+
### [stapi-fastapi](./stapi-fastapi/)
28+
29+
A backend-agnostic [FastAPI](https://fastapi.tiangolo.com/) application for serving STAPI endpoints.
30+
A minimal test implementation is provided in [stapi-fastapi/tests/application.py](stapi-fastapi/tests/application.py).
31+
Run it like so:
32+
33+
```commandline
34+
uv run fastapi dev stapi-fastapi/tests/application.py
35+
```
36+
37+
The app should be accessible at `http://localhost:8000`.
38+
39+
For implementations of **stapi-fastapi** with vendor-specific backends, see repos in the [stapi-fastapi Github organization](https://github.com/stapi-spec?q=stapi-fastapi-&type=all&language=&sort=).
40+
41+
### [pystapi-client](./pystapi-client/)
42+
43+
A Python API and command-line interface (CLI) for working with STAPI servers.
44+
45+
### [pystapi-validator](./pystapi-validator/)
46+
47+
A work-in-progress validator for STAPI APIs.
48+
Currently not very useful.
49+
850
## Development
951

1052
Get [uv](https://docs.astral.sh/uv/), then:
@@ -34,28 +76,3 @@ source .venv/bin/activate
3476
```
3577

3678
See our [contribution guidelines](./CONTRIBUTING.md) for information on contributing any changes, fixes, or features.
37-
38-
## Packages
39-
40-
```mermaid
41-
graph
42-
stapi-pydantic --> pystapi-client --> pystapi-validator
43-
stapi-pydantic --> stapi-fastapi
44-
```
45-
46-
### stapi-fastapi
47-
48-
A minimal test implementation is provided in [stapi-fastapi/tests/application.py](stapi-fastapi/tests/application.py).
49-
Run it like so:
50-
51-
```commandline
52-
uv run fastapi dev stapi-fastapi/tests/application.py
53-
```
54-
55-
The app should be accessible at `http://localhost:8000`.
56-
57-
### pystapi-client
58-
59-
The `pystapi-client` package is a Python client (CLI tool) focused on interfacing with the STAPI specification, specifically with a STAPI server. This is a work in progress.
60-
61-
For more information, see the [README](pystapi-client/README.md).

0 commit comments

Comments
 (0)