Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nasa-ammos/seq-json-schema
Standardized JSON Schema for authoring multi-mission sequences.
https://github.com/nasa-ammos/seq-json-schema
aerospace command json-schema modeling multi-mission nasa planning schema sequence sequencing spacecraft
Last synced: 3 months ago
JSON representation
Standardized JSON Schema for authoring multi-mission sequences.
- Host: GitHub
- URL: https://github.com/nasa-ammos/seq-json-schema
- Owner: NASA-AMMOS
- License: mit
- Created: 2023-01-19T01:48:54.000Z (about 2 years ago)
- Default Branch: develop
- Last Pushed: 2024-06-06T19:09:04.000Z (8 months ago)
- Last Synced: 2024-10-29T11:12:27.856Z (3 months ago)
- Topics: aerospace, command, json-schema, modeling, multi-mission, nasa, planning, schema, sequence, sequencing, spacecraft
- Language: TypeScript
- Homepage: https://nasa-ammos.github.io/seq-json-schema/
- Size: 165 KB
- Stars: 7
- Watchers: 17
- Forks: 2
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![npm (scoped)](https://img.shields.io/npm/v/@nasa-jpl/seq-json-schema)](https://www.npmjs.com/package/@nasa-jpl/seq-json-schema)
[![PyPI](https://img.shields.io/pypi/v/seq-json-schema)](https://pypi.org/project/seq-json-schema/)# seq-json-schema
Standardized [JSON Schema](https://json-schema.org/) for authoring multi-mission sequences. You can read the schema definition [here](https://github.com/NASA-AMMOS/seq-json-schema/blob/develop/schema.json).
You can use our [validation site](https://nasa-ammos.github.io/seq-json-schema/) to validate a `.seq.json` document against the latest schema.## JavaScript or TypeScript
### Install
```sh
npm install @nasa-jpl/seq-json-schema --save
```### Basic Usage
```ts
import seqSchema from '@nasa-jpl/seq-json-schema/schema.json' assert { type: 'json' };
console.log(seqSchema);
```### TypeScript Types
This library also ships with automatically generated TypeScript types from the schema. For example:
```ts
import type { Command, SeqJson } from '@nasa-jpl/seq-json-schema/types';const command: Command = {
args: [],
stem: 'SEND_DATA',
time: { type: 'COMMAND_COMPLETE' },
type: 'command',
};const seqJson: SeqJson = {
id: 'sequence0',
metadata: {},
steps: [command],
};console.log(seqJson);
```## Python
### Install
```sh
pip install seq-json-schema
```### Basic Usage
```py
import importlib.resources
import jsonwith importlib.resources.path('seq-json-schema', 'schema.json') as schemaPath:
file = open(schemaPath)
schema = json.load(file)
print(schema)
```Note if you are using a Python version lower than 3.7 you will have to import the schema using the [importlib-resources](https://pypi.org/project/importlib-resources/) library.