Apollo-Frontend

Logo

CI CD Maintenance

LGTM Grade

apollo.yeger.eu

A web application for first-order model checking in graph structures.

This project and the accompanying bachelor's thesis were inspired by the research group Theoretical Computer Science / Formal Methods by the University of Kassel. The parsing and validation logic of the backend is built upon a Java desktop application by Arno Ehle and Benedikt Hruschka.

Note: This project is also known as gramoFO.

Features

  • πŸ›  Graph Editor: Interactive graph editor with support for touch controls
  • ✨ Model Checking: First-order-logic model checking in graph structures
  • πŸ’Ή Feedback: Three different feedback levels provide insight on model-checking results
  • β˜‘οΈ Assignments: Various assignments, which build an understanding for first-order logic and model checking
  • πŸ”’ Import/Export: Graphs can be saved locally as wells as exported and imported as JSON and YAML
  • πŸ“±/πŸ’» Responsive: Optimized for screens of all sizes
  • πŸ“Ά PWA: Apollo is installable and supports offline editing of graphs
  • 🌐 Localization: Fully localized in English and German
  • πŸŒ— Themes: Dark and light designs

Links

Development

Installation

Run yarn install to install the required dependencies.

Development server

Run yarn start to run a development server. The app will open and automatically reload if any source files are changed.

Note: Default port is 4200.

Code scaffolding

Run ng g c components/{{component-name}} --module=app to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module. To create components with special names such as Page add --type={{type}}.

Linting & formatting

Run yarn lint to lint and yarn pretty to format all source files.

Build

Run yarn build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running tests

Run yarn test to execute the unit tests via Karma.

Deployment

Documentation

Run yarn compodoc to generate the documentation. It will be stored in the documentation/ directory.

Docker

Run docker-compose up -d --build to build and start a container. Alternatively, build the image via the Dockerfile.

Note: Default port is 80.

Note: Change the argument BACKEND_URL as required.

License

BSD 3-Clause License - Copyright © Jan MΓΌller

results matching ""

    No results matching ""