Skip to content

Commit

Permalink
Update Readme (#18)
Browse files Browse the repository at this point in the history
  • Loading branch information
AlexanderG2207 authored Mar 11, 2024
1 parent 7f08423 commit de02224
Show file tree
Hide file tree
Showing 12 changed files with 25 additions and 15 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{
"originHash" : "8e58cbc1a1922049f837e7b416d38a81d4c96c3684875751ca91d74de94b5027",
"pins" : [
{
"identity" : "apollon-ios-module",
"kind" : "remoteSourceControl",
"location" : "https://github.com/ls1intum/apollon-ios-module",
"state" : {
"revision" : "acf45b166f4839ff5ac4f13ea0692add332a6e62",
"version" : "1.0.7"
"revision" : "424631162a5f05bcb0278d59ffb8f9b6f9d9c6ca",
"version" : "1.0.8"
}
},
{
Expand Down
35 changes: 22 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,41 @@
# Apollon iOS
# Apollon - UML Modeling Editor

A UML modeling editor application for iOS written in Swift and SwiftUI. The main functionality is imported from the [Apollon-iOS-Module](https://github.com/ls1intum/apollon-ios-module) SPM package.
A UML modeling editor application for iOS written in Swift and SwiftUI.

## Main Features
### Easy to use editor
### Easy to use Editor
The user interface of Apollon iOS is simple to use.
- Select the diagram type you want to draw or choose to import a file.
- Adding an element is as easy as choosing the desired element from the elements menu by clicking the `+` button at the bottom of the screen.
- Drawing a connection between elements is done by selecting one element and dragging a path to another.
- Edit the text of any element by selecting it and clicking the menu button. An easy-to-use menu will allow you to do so.
- Elements can be moved and resized by holding down the move or resize button on the selected element.
- Supports dark/light themes for the editor.
- Offline Mode: Diagrams are saved locally on your device with SwiftData.
- Elements can be moved and resized by holding the move or resize button on the selected element.
- Supports dark and light appearances.
- Diagrams are saved locally on your device.

<img src="/docs/Apollon-iOS-Demo.gif" alt="Apollon iOS features" width="300"/>

### Import and Export
Apollon iOS allows importing JSON files for diagrams created on [Apollon Standalone](https://apollon.ase.cit.tum.de).
Diagrams created and edited on the Apollon iOS application can also be exported to JSON, allowing diagrams to be used between both applications.
Apollon iOS allows importing JSON files for diagrams created on [Apollon Standalone](https://apollon.ase.cit.tum.de) or from other users. Diagrams created and edited on the Apollon iOS application can also be exported to JSON, PNG, and PDF, allowing you to share and save your diagrams easily.

### UML diagrams
Currently, Apollon iOS supports creating multiple different UML diagrams, with more types to be added in the future.
### UML Diagram Types
Currently, Apollon iOS supports creating multiple UML diagrams, with more types to be added.

The list of UML diagrams includes:
The list of UML diagram types includes:
- `Class Diagram`
- `Object Diagram`
- `Activity Diagram`
- `Use Case Diagram`
- `Component Diagram`

## Screenshots
| Diagrams | Editor | Export |
| Diagrams | Editor | Select Element |
| :---: | :---: | :---: |
| <img src="/docs/screenshots/Diagrams-Screenshot.png" width="300"/> | <img src="/docs/screenshots/Editor-Screenshot.png" width="300"/> | <img src="/docs/screenshots/Share-Screenshot.png" width="300"/> |
| <img src="/docs/images/Diagrams-Screenshot.png" width="300"/> | <img src="/docs/images/Editor-Screenshot.png" width="300"/> | <img src="/docs/images/SelectElement-Screenshot.png" width="300"/> |

| Edit Element | Export | Dark Mode |
| :---: | :---: | :---: |
| <img src="/docs/images/EditElement-Screenshot.png" width="300"/> | <img src="/docs/images/Share-Screenshot.png" width="300"/> | <img src="/docs/images/DarkMode-Screenshot.png" width="300"/> |

## Usage
1. Clone the repository
Expand All @@ -41,3 +44,9 @@ git clone https://github.com/ls1intum/apollon-ios.git
```
2. Open the project in Xcode
3. Compile and run the application in your simulator

## Technical
The app was created as a native iOS implementation of the [Apollon Standalone](https://apollon.ase.cit.tum.de). We employ the MVVM design pattern as the general architectural pattern. The main modeling functionality is imported from the [Apollon-iOS-Module](https://github.com/ls1intum/apollon-ios-module) SPM package and utilizes the `ApollonEdit` module to enable users to create, modify, and interact with UML diagrams. The previews on the home screen utilize the `ApollonView` module to allow users to see a preview of their diagram. Further, the diagrams are saved locally on the device using SwiftData, so no internet connection is needed.

## Contact
For issues or questions regarding the app, please contact [Support](mailto:[email protected]).
Binary file modified docs/Apollon-iOS-Demo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/DarkMode-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/Diagrams-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/EditElement-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/Editor-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/SelectElement-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/Share-Screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/screenshots/Diagrams-Screenshot.png
Binary file not shown.
Binary file removed docs/screenshots/Editor-Screenshot.png
Binary file not shown.
Binary file removed docs/screenshots/Share-Screenshot.png
Binary file not shown.

0 comments on commit de02224

Please sign in to comment.