# Infrastructure

Version 0.1, 2026-10-12. Source: https://developer.nrgon.net/infrastructure

The bottom layer. Five services and an edge. Each is reached through its standard interface, so any tool
that speaks that interface works unchanged.

```cards
compute | Compute | Linux virtual machines in Singapore with a fixed public IPv4. SSH. For long-running processes and anything a partner must whitelist.
container | Containers | OCI images with a shell, file system, git checkout and a public URL per port. The unit for scrapers, APIs, models and agents.
redis | Redis | Managed Redis in Singapore. Redis protocol and an HTTPS REST form of every command. The live picture: latest reading per asset, queues, counters.
bucket | Buckets | S3-compatible object storage. One bucket per project. Raw data written once, never rewritten. Any S3 client.
drive | Drive folders | One shared Google Drive folder per project for documents people edit: bills, drawings, photos, spreadsheets.
edge | Edge | Every public hostname sits behind the edge network: static sites, small APIs as workers, machine endpoints without challenges. IP whitelists live here.
```

## Request path

```schematic
col Client | device/device/Device | cloud/cloud/Partner cloud | user/user/Browser
col Edge | edge/edge/Edge | worker/apps/Worker
col Backend | compute/compute/Compute | container/container/Container
col Storage | bucket/bucket/Bucket | redis/redis/Redis
edges: device>edge cloud>edge user>edge edge>worker worker>bucket worker>redis edge>compute edge>container compute>bucket container>redis
```

Small endpoints run as workers at the edge and write straight to storage. Larger
services run on compute or in containers behind the edge.

## Interfaces

| service | interface | typical client |
|---|---|---|
| compute | SSH, HTTPS | shell, systemd services, Python |
| containers | OCI image, shell, HTTPS per port | Docker tooling, the container SDK |
| Redis | Redis protocol, HTTPS REST | redis-cli, any Redis library, curl |
| buckets | S3 API | aws cli, rclone, boto3, any S3 library |
| Drive folders | Google Drive, shared folder | Drive web and apps, Drive API |
| edge | HTTPS, DNS | browsers, curl, partner systems |

## Naming

| | pattern | example |
|---|---|---|
| hostname | `<purpose>.nrgon.net` internal and partner, `<purpose>.nrgon.io` public product | `data.nrgon.net` |
| bucket | `nrgon-<project>` | `nrgon-cnte` |
| object key | `<source>/<kind>/<id>/<YYYY-MM-DD>/<timestamp>-<message id>.json` | `cnte/status/NOVA-0001/2026-09-24/1758700000000-ab12.json` |
| Redis key | `<project>:<kind>:<id>` | `cnte:latest:NOVA-0001` |
| Drive folder | `<project> / <site> / <kind>` | `WinMart / 34 HHT / bills` |
