<div align="center">

# A.R.K.A.

### Autonomous Resilience and Critical-resource Archive
**A private local readiness node for the moment the network disappears.**

[The Cyber Prepper](https://thecyberprepper.com/) · [Apache-2.0](LICENSE) · LT / EN

</div>

---

## Kas tai?

**A.R.K.A.** yra lengvas, naršyklėje valdomas vietinis mazgas, skirtas žinioms,
žemėlapiams ir sprendimų paramai laikyti pasiekiamus be išorinio interneto.
`project-nomad-main` šiame workspace naudojamas kaip veikimo koncepcijos etalonas;
A.R.K.A. yra atskira „The Cyber Prepper“ realizacija.

Pagrindiniai principai:

- **local-first:** UI, API, katalogas ir atsarginis asistentas veikia vietiniame įrenginyje;
- **graceful degradation:** nepasiekiamas LLM nesustabdo įmontuotos žinių bazės;
- **observable:** komandų centras rodo realią atminties, disko ir uptime telemetriją;
- **portable:** vienas Node.js procesas arba Docker Compose;
- **bilingual:** visas pagrindinis srautas veikia lietuvių ir anglų kalbomis.

## Veikiantys moduliai

| Modulis | Būsena | Pastaba |
|---|---|---|
| Komandų centras | Veikia | Reali hosto ir proceso telemetrija |
| Įmontuota žinių bazė | Veikia | LT/EN paieška, veikia be interneto |
| AI asistentas | Dalinis | Fallback visada veikia; lokalus LLM pasirinktinis |
| Turinio katalogas | Veikia | ZIM ir PMTiles atsisiuntimai, progresas, atšaukimas |
| ZIM skaitytuvas | Veikia | Pavadinimų ir pilno teksto paieška |
| PMTiles žemėlapiai | Veikia po atsisiuntimo | MapLibre peržiūra iš vietinio failo |
| Šifruota saugykla | Dar neįdiegta | Sąmoningai nerodoma kaip veikianti |
| Mesh ryšys | Dar neįdiegtas | Roadmap funkcija |

## Greitas lokalus paleidimas

Reikia Node.js 22.22 ar naujesnės LTS versijos.

```bash
npm ci
npm run build
npm start
```

Atidarykite <http://127.0.0.1:8080>.

Vystymui:

```bash
npm ci
npm run dev
```

UI: <http://127.0.0.1:5173>, API: <http://127.0.0.1:8080>.

Išsami LT/EN instrukcija: [`docs/INSTALL.md`](docs/INSTALL.md).

## Docker

Tik bazinis mazgas:

```bash
docker compose -f docker/docker-compose.yml up -d --build arka
```

Mazgas su pasirinktiniu Ollama konteineriu:

```bash
docker compose -f docker/docker-compose.yml --profile ai up -d --build
docker exec arka_ollama ollama pull llama3.2
```

Numatytai prievadas susiejamas tik su `127.0.0.1`. A.R.K.A. neturi integruotos
naudotojų autentifikacijos, todėl jo negalima tiesiogiai viešinti internete.

## Architektūra

- `app/` — Express + TypeScript API, katalogas, atsisiuntimai, ZIM ir AI fallback;
- `web/` — React 19 + Vite + Tailwind 4 komandų centras;
- `docker/` — atskiras bazinis mazgas ir pasirinktinio AI profilis;
- `storage/` — atsisiųstas turinys ir indeksai (sukuriamas vykdymo metu);
- `docs/` — diegimo, architektūros ir testavimo dokumentacija.

## Licencija ir kilmė

A.R.K.A. platinama pagal [Apache License 2.0](LICENSE). Ji **nenaudoja QGPL**.
Koncepcijos etalono atribucija pateikta [NOTICE](NOTICE) faile. `Project N.O.M.A.D.`
yra atskiras Crosstalk Solutions LLC projektas ir prekės ženklas.

---

## English summary

A.R.K.A. is a private local readiness node for offline references, downloadable
ZIM libraries, PMTiles maps and local decision support. The interface and API run
as one lightweight package. A local LLM is optional: when unavailable, the assistant
falls back to the built-in knowledge base. See [`docs/INSTALL.md`](docs/INSTALL.md)
for complete local and Docker setup instructions.
