diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4771d78..167022a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,6 +42,12 @@ We use [mypy](https://mypy-lang.org/) for static typing. When possible, projects work in `strict` mode, meaning that type checking is strongly enforced. Some projects are not quite ready for `strict` mode, but we want to get them there. +## Docs + +We use [mkdocs](https://www.mkdocs.org/) for our [documentation](/docs/). +To build the docs, run `uv run mkdocs build`. +To serve the docs locally, run `uv run mkdocs serve`. + ## Lints and checks We use [pre-commit](https://pre-commit.com/). diff --git a/README.md b/README.md index 860a052..9df85e3 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,14 @@ source .venv/bin/activate See our [contribution guidelines](./CONTRIBUTING.md) for information on contributing any changes, fixes, or features. +## Packages + +```mermaid +graph + stapi-pydantic --> pystapi-client --> pystapi-validator + stapi-pydantic --> stapi-fastapi +``` + ### stapi-fastapi server A minimal test implementation is provided in [stapi-fastapi/tests/application.py](stapi-fastapi/tests/application.py). @@ -46,10 +54,8 @@ uv run fastapi dev stapi-fastapi/tests/application.py The app should be accessible at `http://localhost:8000`. -## Packages +### stapi-client -```mermaid -graph - stapi-pydantic --> pystapi-client --> pystapi-validator - stapi-pydantic --> stapi-fastapi -``` +The `stapi-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. + +For more information, see the [README](pystapi-client/README.md). diff --git a/docs/stapi-client/index.md b/docs/stapi-client/index.md new file mode 100644 index 0000000..a256a74 --- /dev/null +++ b/docs/stapi-client/index.md @@ -0,0 +1,13 @@ +# stapi-client + +A Python client (CLI tool) for interfacing with a [Satellite Tasking API (STAPI)](https://github.com/stapi-spec) server. + +!!! note + + This is a work in progress. + +## Installation + +```shell +python -m pip install pystapi-client +``` diff --git a/docs/stapi-pydantic/index.md b/docs/stapi-pydantic/index.md index a2b4bac..11eef04 100644 --- a/docs/stapi-pydantic/index.md +++ b/docs/stapi-pydantic/index.md @@ -5,4 +5,4 @@ !!! note This repository intentionally has no input/output (IO) functionality. - For making requests to a STAPI API, use **pystapi-client**. + For making requests to a STAPI API, use **[pystapi-client](../stapi-client/index.md)**. diff --git a/mkdocs.yml b/mkdocs.yml index 43e3055..8a8baf6 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -14,6 +14,8 @@ nav: - stapi-pydantic: - stapi-pydantic/index.md - stapi-pydantic/api.md + - stapi-client: + - stapi-client/index.md plugins: - mkdocstrings: diff --git a/pyproject.toml b/pyproject.toml index da562b8..a7ecc8a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -75,6 +75,7 @@ ignore_missing_imports = true plugins.md013.enabled = false # @gadomski likes to do one-line-per-sentence in markdown plugins.md024.enabled = false # duplicate headers in changelog plugins.md041.enabled = false # github templates don't start with an h1 +plugins.md046.enabled = false # code block style (we use both for mkdocs) [tool.pytest.ini_options] filterwarnings = [ diff --git a/pystapi-client/README.md b/pystapi-client/README.md index e69de29..42a44b5 100644 --- a/pystapi-client/README.md +++ b/pystapi-client/README.md @@ -0,0 +1,21 @@ +# pystapi-client + +[![CI](https://github.com/stapi-spec/pystapi/actions/workflows/ci.yaml/badge.svg)](https://github.com/stapi-spec/pystapi/actions/workflows/ci.yaml) + + +[![Documentation](https://stapi-spec.github.io/pystapi/stapi-client/)](https://stapi-spec.github.io/pystapi/stapi-client/) + +A Python client for working with [STAPI](https://stapi-spec.github.io/pystapi/) APIs. + +## Installation + +Install from PyPi. +Other than [stapi-pydantic](https://stapi-spec.github.io/pystapi/stapi-pydantic/) itself, the only dependencies for **pystapi-client** are the Python [httpx](https://www.python-httpx.org/) and [python-dateutil](https://dateutil.readthedocs.io) libraries. + +## Development + +See the instructions in the [pystapi monorepo](https://github.com/stapi-spec/pystapi?tab=readme-ov-file#development). + +## Documentation + +See the [documentation page](https://stapi-spec.github.io/pystapi/stapi-client/) for the latest docs.