Feature: Add authentic NATO (APP‑6 / MIL‑STD) & OPFOR/BLUFOR markers — include licensing/legal checklist
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Ambito
- documentation, mobile-dev
Direzione di ricerca
Inizia leggendo MilitarySymbolPicker.kt, TacticalUnitsMapOverlay.kt, LocationEntity e TacticalUnitEntity per mappare i campi dei simboli esistenti e il comportamento di fallback. Esamina la pipeline degli asset e la configurazione dei test del progetto prima di scegliere una fonte di simboli interna o con licenza permissiva. Il lavoro è completo quando il picker e il rendering della mappa supportano simboli, affiliazioni, modificatori, persistenza e marker di fallback, e sono presenti test o controlli QA e la licenza degli asset è documentata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Add authentic NATO-style military symbols (APP‑6 / MIL‑STD family) and OPFOR/BLUFOR marker variants to the map symbol set and symbol picker. Ensure all assets are permissively licensed (or created in-house) and documented with a licensing checklist.
Why
- Current markers are simplified (colored circle + letter + arrow). The UI already discovers drawables with prefix
ic_mapicon_(MilitarySymbolPicker.kt) and supports symbol fields in the DB (LocationEntity/TacticalUnitEntity). - Authentic symbols improve clarity and realism for tactical workflows and training.
- We must ensure assets are free-to-use or have proper attribution to avoid legal issues.
Proposed work
- Add a canonical set of vector-based NATO / MIL‑STD symbols (SVG → Android VectorDrawable or runtime vector render). Prefer CC0/MIT/Apache or create in-house icons.
- Extend
MilitarySymbolPickerto preview and select real symbols, affiliation colors, and modifiers. - Update
TacticalUnitsMapOverlayto render vector symbols with affiliation coloring and fall back to circle markers when none assigned. - Add DB migration or mapping scripts if needed, tests, QA checks, and sample data.
Acceptance criteria
- Picker saves a NATO symbol + affiliation into
symbolSet,symbolEntity,symbolAffiliation,symbolColor. - Map displays vector-drawn NATO symbols (units + static locations) with correct color and modifiers; heading arrows still render for applicable units.
- Legacy circle-letter markers remain as fallback.
- All new symbol assets include license metadata or are created in-house and documented.
- README/docs updated with asset origin and licensing guidance.
- Tests and QA checklist completed (zoom/rotation/high-density scenarios).
Tasks
- Research permissive MIL‑STD/APP‑6-compatible symbol sources (record licenses & links).
- Convert chosen SVGs to Android VectorDrawable or add runtime SVG renderer.
- Update
MilitarySymbolPicker.ktto show symbol previews and affiliation colorings. - Implement symbol rendering in
TacticalUnitsMapOverlay.kt(vector draw + color + modifiers). - Add migrations or mapping code for existing icons -> new symbol fields.
- Add integration/UI tests and manual QA checklist.
- Add
/assets/licenseswith attribution & license files. - Legal review / sign-off for third-party assets (if used).
Licensing & legal checklist
- Prefer CC0 / MIT / Apache 2.0 assets or create icons in-house.
- For third-party assets: include source link, license file, and required attribution in
/assets/licensesorNOTICE. - Avoid trademarked logos (e.g., NATO crest) unless permission is granted.
- If uncertain, create a stylized in-house APP‑6 compatible set to avoid legal risk.
- Lingua principale
- Kotlin
- Stelle
- 41
- Fork
- 4
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di arn-c0de/InteractiveChecklists
-
documentation help wanted priority: low translation
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
design frontend help wanted priority: medium UI/UX
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
design frontend good first issue help wanted priority: medium UI/UX
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
Design: 🎨 UI/UX Designer Wanted: App Interface ImprovementsForse di nuovo libera @pedrocsampaio l’ha presa 274 giorni fa e non c’è nessuna pull request aperta. Apertadesign enhancement frontend help wanted priority: low UI/UX
arn-c0de/InteractiveChecklists#27 · 2 commenti · 1 assegnatario ·
-
Feature: Make app UI & menus responsive across phones, tablets and orientations — ensure full functionalityForse di nuovo libera @arn-c0de l’ha presa 278 giorni fa e non c’è nessuna pull request aperta. Apertaenhancement help wanted priority: medium UI/UX
arn-c0de/InteractiveChecklists#23 · 1 assegnatario ·
Tutte le issue di arn-c0de/InteractiveChecklists
Issue simili
-
design good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
scribe-org/Scribe-Android#739 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
xybrid-ai/xybrid#661 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
android bug kotlin vulkan
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
maplibre/maplibre-native-ffi#852 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
I maintainer di solito rispondono entro 1 giorno