Skip to content

NASA-AMMOS/aerie

Folders and files

NameName
Last commit message
Last commit date
Sep 9, 2024
Sep 9, 2024
Sep 9, 2024
Sep 9, 2024
Sep 9, 2024
Sep 4, 2024
Feb 16, 2024
Sep 17, 2024
Sep 9, 2024
Feb 16, 2024
Feb 21, 2024
Sep 9, 2024
Feb 16, 2024
Jul 19, 2024
Sep 9, 2024
Sep 9, 2024
Sep 9, 2024
Jul 23, 2024
Sep 9, 2024
Jun 7, 2024
Feb 16, 2024
Sep 17, 2024
Sep 9, 2024
Sep 9, 2024
Sep 9, 2024
Sep 18, 2024
Sep 3, 2024
Feb 29, 2024
Sep 9, 2024
Nov 22, 2022
Apr 1, 2022
Apr 17, 2024
Dec 20, 2022
Jul 24, 2020
Apr 15, 2024
Dec 29, 2021
Dec 29, 2021
Dec 21, 2023
Jul 28, 2022
Apr 15, 2024
Sep 9, 2024
Sep 18, 2024
Feb 16, 2024
Feb 16, 2024
Sep 9, 2024

Repository files navigation

slack


Aerie

Aerie is a software framework for modeling spacecraft. Its main features include:

  • A Java-based mission modeling library
  • A discrete-event simulator
  • An embedded TypeScript DSL for defining and executing scheduling goals
  • An embedded TypeScript DSL for defining and executing constraints
  • An embedded TypeScript DSL for defining and executing activity command expansions
  • An embedded TypeScript DSL for defining sequences
  • A GraphQL API
  • A web-based client application

Getting Started

To get started using Aerie for the first time please do our fast track tutorial on our documentation website.

Need Help?

News and Updates

  • Join the Aerie Users group to stay up to date on news, releases, and our project roadmap.

Directory Structure

.
├── .github                     # GitHub metadata
├── constraints                 # Java library for constraint checking
├── contrib                     # Java convenience classes for mission models
├── db-tests                    # Database unit tests
├── deployment                  # Deployment artifacts and documentation
├── docker                      # Additional Dockerfiles for Aerie-specific images
├── docs                        # Documentation
├── e2e-tests                   # End-to-end tests
├── examples                    # Example mission models
├── gradle                      # Gradle Wrapper
├── load-tests                  # Load testing code and configuration
├── merlin-driver               # Java library for discrete-event simulation
├── merlin-framework            # Java library for mission modeling
├── merlin-framework-junit      # Extension of JUnit to unit test mission models
├── merlin-framework-processor  # Java annotation processor for mission models
├── merlin-sdk                  # Java interface between mission models and the merlin-driver
├── merlin-server               # Service for planning and simulation
├── merlin-worker               # Worker for executing simulations
├── parsing-utilities           # Java classes for JSON serialization and deserialization
├── permissions                 # Java library for authorizing endpoint requests
├── scheduler-driver            # Java library for goal-oriented scheduling
├── scheduler-server            # Service for scheduling
├── scheduler-worker            # Worker for executing scheduling goals
├── sequencing-server           # Service for sequence generation and management
└── third-party                 # External Java dependencies that are not obtained from Maven

Want to help?

Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing. If you are a developer you can get started quickly by reading the developer documentation.

License

The scripts and documentation in this project are released under the MIT License.