The SeaLion Mission Architecture is a model of the Sealion Flight Software architecture, intended to guide an implementation, for the SeaLion Mission - a joint CubeSat mission between Old Dominion University (ODU) & Coast Guard Academy (CGA).
The SeaLion Mission Architecture is modeled using the Mach30 modeling language (m30ml) for specifying references, stakeholder needs, user stories, & data structures, s.a., the satellite health data packet.
This repository (repo) also structured as a DOF-component for defining the contents of the Mission ConOps as a collection of nested subcomponents, component interfaces, and component functions for generating bill of materials (BOMs) and assembly instructions for the SeaLion CubeSat.
Full documentation is available on https://odu-cga-cubesat.github.io/sealion-mission-architecture/.
This project also follows a docs-as-code approach, applying the same principles and practices of software development for documentation.
This project is currently undergoing a refactor, whereby the core modeling language will rebuild on top of LinkML - a linked data modeling language, with considerations for mappings to the web ontology language (OWL) via the linkml-owl extension.
Want to contribute? Checkout our Contributor’s guide!
You can build the documentation site on a local desktop:
Note: It is recommended you run the following instructions on a Linux/Unix-like operating system. If you are on a Windows machine, consider installing Windows Subsystem for Linux.
Clone the SeaLion Mission ConOps repo. Don’t forget to use --recurse-submodules
flag, or else you won’t pull down some of the code you need to generate a working site.
git clone --recurse-submodules https://github.com/odu-cga-cubesat/sealion-mission-architecture.git
cd sealion-mission-architecture
Note: If you accidentally cloned without using --recurse-submodules
, you can run git submodule update --init --recursive
to pull down submodules needed to generate a working site.
Once you’ve cloned the repo & installed podman, run the buildDocs.sh
script in the project root directory (Note: Linux users may need to prepend this command sudo
). This will pull the podman images, as well as install node modules, needed for generating the sealion-mission-architecture
page locally. You can view all locally installed podman images by running podman images
.
./buildDocs.sh
Once you run this step, you can locally view the documentation by opening dist/index.html
in a web browser or by opening dist/sealion-mission-architecture.pdf
in a pdf viewer.