Skip to content

Commit 1fee440

Browse files
authored
Update versions and fix rust release actions (#4)
* Update versions and fix rust release actions * update docs
1 parent f363b25 commit 1fee440

File tree

9 files changed

+98
-75
lines changed

9 files changed

+98
-75
lines changed

.github/workflows/rust-release.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,6 @@ jobs:
2222

2323
upload-assets:
2424
needs: create-release
25-
defaults:
26-
run:
27-
working-directory: antares
2825
strategy:
2926
matrix:
3027
include:
@@ -41,7 +38,7 @@ jobs:
4138
with:
4239
# (required) Comma-separated list of binary names (non-extension portion of filename) to build and upload.
4340
# Note that glob pattern is not supported yet.
44-
bin: ...
41+
bin: antares
4542
# (optional) Target triple, default is host triple.
4643
# This is optional but it is recommended that this always be set to
4744
# clarify which target you are building for if macOS is included in
@@ -67,3 +64,4 @@ jobs:
6764
archive: $bin-$tag-$target
6865
# (required) GitHub token for uploading assets to GitHub Releases.
6966
token: ${{ secrets.GITHUB_TOKEN }}
67+
manifest-path: antares/Cargo.toml

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,12 @@ We present ANTARES, an open-source, software-based naval radar simulator. ANTARE
5656

5757
## Credits
5858

59-
This project was developed by **Juan Sebastian Urrea-Lopez** as part of research initiatives at **Universidad de los Andes**, in collaboration with the **Armada de la República de Colombia**.
59+
This project was developed jointly by The Software Design Lab at Universidad de los Andes and the Colombian Navy.
60+
61+
**Authors:**
62+
- Juan Sebastian Urrea-Lopez (Universidad de los Andes) <[email protected]>
63+
- Camilo Barreto-Reyes (Universidad de los Andes, Colombian Navy) <[email protected]>
64+
- Mario Linares-Vásquez (Universidad de los Andes) <[email protected]>
6065

6166
## License
6267

antares-python/pyproject.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
[project]
22
name = "antares-python"
3-
version = "0.1.2"
3+
version = "1.0.0"
44
description = "Python interface for the Antares simulation software"
55
authors = [
66
{ name = "Juan Sebastian Urrea-Lopez", email = "[email protected]" },
7+
{ name = "Camilo Barreto-Reyes", email = "[email protected]" },
8+
{ name = "Mario Linares-Vásquez", email = "[email protected]" },
79
]
810
readme = "README.md"
911
requires-python = ">=3.13"

antares-web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "antares-web",
33
"private": true,
4-
"version": "2.0.0",
4+
"version": "1.0.0",
55
"type": "module",
66
"scripts": {
77
"dev": "vite",

docs/antares-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,5 @@ antares-cli subscribe
6363

6464
## 📎 Technical Details
6565

66-
For installation instructions, configuration schema, and developer options, see the [antares-python GitHub repository](https://github.com/jsurrea/antares-python).
66+
For installation instructions, configuration schema, and developer options, see the [antares-python GitHub repository](https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares-python).
6767

docs/antares-python.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,4 +81,4 @@ Whether you're building mission rehearsal tools, tactical planning apps, or AI-c
8181

8282
## 🔗 Learn More
8383

84-
Full technical details, API reference, and source code are available at the [GitHub repository](https://github.com/TheSoftwareDesignLab/ANTARES/antares-python).
84+
Full technical details, API reference, and source code are available at the [GitHub repository](https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares-python).

docs/antares-simulator.md

Lines changed: 64 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -7,62 +7,96 @@ description: >-
77
A high-fidelity simulation engine for maritime radar and sensor systems, designed for real-time experimentation and analysis.
88
---
99

10-
# 🧠 ANTARES Simulator
11-
12-
> The core of the platform: a high-fidelity, real-time radar simulation engine built for performance, extensibility, and operational realism.
13-
{: .prompt-info }
14-
1510
## 🎯 Purpose
1611

17-
The simulator models **naval radar operations** in dynamic maritime scenarios, supporting both training and system integration efforts.
18-
It enables reproducible experiments, behavior analysis, and real-time radar tracking.
12+
The simulator models **naval radar operations** in dynamic maritime scenarios, supporting both training and system integration efforts. It enables reproducible experiments, behavior analysis, and real-time radar tracking.
1913

2014
## 🔄 Architecture Overview
2115

22-
- **Built in Rust**: Ensures high performance, type safety, and memory security.
23-
- **Command-Driven**: Controlled via TCP messages for full integration flexibility.
24-
- **Event Loop Core**: Uses a time-stepped loop to simulate real-world radar behavior.
25-
- **Data Broadcast**: Publishes `Track` objects in real-time to subscribers (via TCP or WebSocket).
16+
ANTARES follows a modular design centered around two main subsystems: **Simulation** and **Radar**, coordinated by a central **Controller**.
2617

2718
```mermaid
28-
flowchart TD
29-
A[Simulation Controller] --> B[World State Engine]
30-
B --> C[Ship Dynamics]
31-
B --> D[Radar Signal Generator]
32-
D --> E[Track Data Stream]
19+
graph TD
20+
Controller[Controller]
21+
22+
Controller --> Simulation[Simulation]
23+
Controller --> Radar[Radar]
24+
25+
Ship[Ship] --> Emitter[Emitter]
26+
Simulation --> Emitter
27+
28+
Emitter --> MovementStrategy[Movement Strategy]
29+
30+
Line[Line] --> MovementStrategy
31+
Circle[Circle] --> MovementStrategy
32+
Random[Random] --> MovementStrategy
33+
Stationary[Stationary] --> MovementStrategy
34+
35+
Radar --> Detector[Detector]
36+
Radar --> Tracker[Tracker]
37+
38+
Detector --> TrackInterface[Track InterfaceTCP]
39+
Tracker --> TrackInterface
40+
41+
TrackInterface --> TCI[TCI]
42+
TrackInterface --> TDI[TDI]
3343
```
3444

35-
> Track data can be consumed by GUI clients, automated systems, or external C4I modules.
36-
> {: .prompt-tip }
45+
### **Core Components**
46+
47+
**🎛️ Controller**
48+
Acts as a unified facade managing both simulation and radar subsystems. Provides centralized control for initialization, execution, and coordination between components.
49+
50+
**🌊 Simulation Subsystem**
51+
- **Emitters**: Generate radar signals within the environment (e.g., ships, buoys)
52+
- **Ships**: Moving or stationary vessels that emit trackable signals
53+
- **Movement Strategy**: Implements the Strategy Pattern to decouple movement logic from entities, supporting:
54+
- **Line**: Linear movement with constant heading
55+
- **Circle**: Circular patrol patterns
56+
- **Random**: Unpredictable movement within boundaries
57+
- **Stationary**: Fixed position entities
58+
59+
**📡 Radar Subsystem**
60+
- **Detector**: Captures raw signals from emitters, filters by operational range, and calculates distance/direction to generate individual plots
61+
- **Tracker**: Processes multiple plots over time to establish coherent tracks, calculating target velocity and trajectory
62+
63+
**🔗 Track Interface (TCP)**
64+
- **TCI (Track Control Interface)**: Receives control commands from external systems for runtime radar adjustments
65+
- **TDI (Track Data Interface)**: Transmits detected tracks and associated data to connected systems for analysis
66+
67+
### **Design Philosophy**
68+
69+
- **High Performance**: Built in Rust for type safety, memory security, and concurrent execution
70+
- **Extensibility**: Strategy Pattern enables easy addition of new movement behaviors without architectural changes
71+
- **Real-Time Operation**: Event-driven loop ensures sub-10ms latency for live tracking scenarios
72+
- **Integration-Ready**: TCP-based interfaces support seamless connection with C4I and Combat Management Systems
73+
74+
> The modular architecture allows components to operate independently while maintaining tight integration for real-time performance.
75+
{: .prompt-tip }
3776

3877
## 📦 Use Cases
3978

40-
* 🧭 **Officer Training Simulations**
41-
Build realistic operational scenarios without physical deployments.
79+
* 🧭 **Officer Training Simulations**: Build realistic operational scenarios without physical deployments.
4280

43-
* 🔍 **Sensor Behavior Testing**
44-
Validate how detection algorithms react under different vessel configurations.
81+
* 🔍 **Sensor Behavior Testing**: Validate how detection algorithms react under different vessel configurations.
4582

46-
* 🧪 **System Integration & Interoperability**
47-
Emulate radar behavior to test communication with external systems (e.g., CMS, C4I).
83+
* 🧪 **System Integration & Interoperability**: Emulate radar behavior to test communication with external systems (e.g., CMS, C4I).
4884

49-
* 🧰 **Research and Development**
50-
Rapidly prototype and validate new tracking algorithms or radar control strategies.
85+
* 🧰 **Research and Development**: Rapidly prototype and validate new tracking algorithms or radar control strategies.
5186

5287
## 🛠️ Configuration
5388

54-
Simulation parameters are defined via structured TOML or TCP commands.
55-
Entities are configurable with:
89+
Simulation parameters are defined via structured TOML or TCP commands. Entities are configurable with:
5690

5791
* Initial position, heading, and velocity
5892
* Radar range, scan rate, and update interval
5993
* Behavioral strategies and decision logic
6094

6195
> Ships and radars can be added, modified, or removed at runtime.
62-
> {: .prompt-info }
96+
{: .prompt-info }
6397

6498
## Learn More
6599

66100
For source code, contributions, or in-depth technical details, visit the GitHub repository:
67-
👉 [https://github.com/TheSoftwareDesignLab/ANTARES/antares](https://github.com/TheSoftwareDesignLab/ANTARES/antares)
101+
👉 [https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares](https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares)
68102

docs/antares-web.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,5 @@ _Adding a new vessel with customizable parameters_
5151
## Learn More
5252

5353
For source code, contributions, or in-depth technical details, visit the GitHub repository:
54-
👉 [https://github.com/TheSoftwareDesignLab/ANTARES/antares-web](https://github.com/TheSoftwareDesignLab/ANTARES/antares-web)
54+
👉 [https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares-web](https://github.com/TheSoftwareDesignLab/ANTARES/tree/main/antares-web)
5555

docs/index.md

Lines changed: 19 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,20 @@ toc: true
66
# ⚓ ANTARES
77
## A Modern, Open-Source Platform for Simulating Naval Radar Operations
88

9-
**ANTARES** is a modular, real-time radar simulator developed for training, validation, and research in naval environments.
10-
It seamlessly integrates with modern systems, while remaining intuitive, secure, and extensible.
9+
**ANTARES** is a modular, real-time radar simulator developed for training, validation, and research in naval environments. It seamlessly integrates with modern systems, while remaining intuitive, secure, and extensible.
1110

1211
## 🎯 Mission
1312

1413
**Prepare. Validate. Evolve.**
1514

16-
ANTARES is designed to serve **military training programs**, **system integrators**, and **research teams** by simulating realistic naval radar operations in software. It empowers decision-making and systems engineering*before touching real hardware*.
15+
ANTARES is designed to serve **military training programs**, **system integrators**, and **research teams** by simulating realistic naval radar operations in software. It empowers decision-making and systems engineering *before touching real hardware*.
1716

1817
## 🔍 What is ANTARES?
1918

20-
**ANTARES** is an open-source project developed by **Juan Sebastián Urrea-López** at **Universidad de los Andes**, in collaboration with the **Colombian Navy**.
19+
**ANTARES** is an open-source project developed by **The Software Design Lab** at **Universidad de los Andes**, in collaboration with the **Colombian Navy**.
2120

22-
> This work is presented in the paper: **“ANTARES: A Software-Based Tool for Simulating Naval Radar Operations”**
21+
> This work is presented in the paper:
22+
**“ANTARES: A Software-Based Tool for Simulating Naval Radar Operations”**
2323
_International Conference on Military Technologies 2025_
2424
Brno, Czechia
2525
{: .prompt-info }
@@ -65,32 +65,19 @@ Feedback confirmed its:
6565
The platform is composed of multiple sub-projects, each with a focused role:
6666

6767
### 🧠 [`antares-simulator`](antares-simulator/)
68-
> High-performance simulation engine written in **Rust**
69-
> Simulates ship motion, wave interaction, radar detection, and signal broadcasting
70-
{: .prompt-info }
68+
High-performance simulation engine written in **Rust**. Simulates ship motion, wave interaction, radar detection, and signal broadcasting
7169

7270
### 🌐 [`antares-web`](antares-web/)
73-
> Interactive web interface for configuring simulations, tracking targets, and visualizing radar output in real time
74-
{: .prompt-info }
71+
Interactive web interface for configuring simulations, tracking targets, and visualizing radar output in real time
7572

7673
### 🧪 [`antares-python`](antares-python/)
77-
> Python SDK for scripting simulation workflows and integrating with external platforms or AI agents
78-
{: .prompt-info }
74+
Python SDK for scripting simulation workflows and integrating with external platforms or AI agents
7975

8076
### 💻 [`antares-cli`](antares-cli/)
81-
> Terminal interface for automation, testing, and headless execution of ANTARES simulations
82-
{: .prompt-info }
83-
84-
All components are released under the MIT License and designed to work independently or as an integrated system.
85-
86-
## 📄 Documentation
77+
Terminal interface for automation, testing, and headless execution of ANTARES simulations
8778

88-
All documentation is written in Markdown and compiled automatically using
89-
👉 [**showcase-chirpy-easy-docs**](https://github.com/jsurrea/showcase-chirpy-easy-docs)
90-
powered by GitHub Actions.
91-
92-
> View individual guides, tutorials, and API references inside the `docs/` folder or through each sub-project’s page.
93-
{: .prompt-tip }
79+
> All components are released under the MIT License and designed to work independently or as an integrated system.
80+
{: .prompt-info }
9481

9582
## 🌍 Impact
9683

@@ -101,21 +88,18 @@ ANTARES brings the power of simulation to modern naval operations by:
10188
- **Improving readiness** with repeatable and measurable scenarios
10289
- **Democratizing access** to radar simulation technologies through open source
10390

104-
> Simulation is not just a convenience — it is a strategic enabler for defense innovation.
105-
{: .prompt-danger }
106-
10791
## 📬 Contact
10892

109-
**Juan Sebastian Urrea-Lopez**
110-
Lead Developer & Researcher
111-
[📧 Contact](mailto:[email protected])
93+
**Project Authors:**
94+
- **Juan Sebastian Urrea-Lopez** (Universidad de los Andes) <[email protected]>
95+
- **Camilo Barreto-Reyes** (Universidad de los Andes / Colombian Navy) <[email protected]>
96+
- **Mario Linares-Vásquez** (Universidad de los Andes) <[email protected]>
97+
98+
*Developed through a collaboration between:*
99+
🔹 **The Software Design Lab** at Universidad de los Andes
100+
🔹 **Armada de la República de Colombia**
112101

113102
## 🔗 Links
114103

115104
- 🔗 [GitHub Repository](https://github.com/thesoftwaredesignlab/ANTARES)
116-
- 🔗 [Project Website](https://thesoftwaredesignlab.github.io/ANTARES)
117105
- 🔗 [Conference Info](https://icmt2025.cz)
118-
119-
> Ready to explore?
120-
Start with the simulator 👉 [`antares/`](./antares/)
121-
{: .prompt-success }

0 commit comments

Comments
 (0)