Skip to main content

SGraph-AI__App__Send

Project description

SGraph Send

Privacy-first file sharing with zero-knowledge encryption at send.sgraph.ai.

What is this?

SGraph Send is a file sharing service where the server never sees your files. Files are encrypted in your browser using AES-256-GCM before upload. The decryption key never leaves your device and is never sent to the server. The server only stores encrypted ciphertext.

How it works

  1. Sender selects a file and enters an access token
  2. Browser generates an AES-256-GCM encryption key and encrypts the file locally
  3. Encrypted file is uploaded to the server (the server never sees the plaintext)
  4. Sender shares the download link via one channel and the decryption key via another
  5. Receiver opens the link, enters the key, and the file is decrypted in their browser
  6. Transparency panel shows exactly what data was captured and what was not

The server stores only encrypted bytes, anonymised metadata, and one-way IP hashes. No file names, no decryption keys, no plaintext.

Architecture

  • Two Lambda functions — public (transfers, health, static UI) and admin (tokens, stats)
  • Lambda URL Functions — direct HTTPS endpoints, no API Gateway
  • FastAPI + Mangum via OSBot-Fast-API route classes
  • Memory-FS storage abstraction — in-memory (tests), local disk (dev), S3 (production)
  • Type_Safe schemas from osbot-utils (no Pydantic)
  • Web Crypto API — AES-256-GCM encryption/decryption in the browser
  • IFD Web Components — vanilla JS frontend, zero framework dependencies
  • Three UIs — user workflow, power user tools, admin console

Project structure

sgraph_ai_app_send/              # Application code
  lambda__admin/                 # Admin Lambda (FastAPI + Mangum)
  lambda__user/                  # User Lambda (in progress)

sgraph_ai_app_send__ui__admin/   # Admin UI (static assets)
sgraph_ai_app_send__ui__user/    # User UI (static assets)

tests/unit/                      # Tests (no mocks, real in-memory stack)

.issues/                         # Issues FS (file-based issue tracking)
roles/                           # Role-based review documents
  architect/                     # API contracts, data models, system topology
  cartographer/                  # System landscape maps
  conductor/                     # Product owner reviews and decisions
  dev/                           # Implementation plans and code reviews
  devops/                        # Infrastructure and deployment reviews
  librarian/                     # Knowledge base, Issues FS maintenance
  qa/                            # Test strategy and security reviews

Development

# Install dependencies
poetry install

# Run tests
poetry run pytest tests/unit/ -v

# List issues
poetry run issues-fs list

Stack

Layer Technology
Runtime Python 3.12 / arm64
Web framework FastAPI via OSBot-Fast-API
Lambda adapter Mangum
Storage Memory-FS (pluggable backends)
AWS operations osbot-aws
Type system Type_Safe (osbot-utils)
Frontend Vanilla JS + Web Components (IFD)
Encryption Web Crypto API (AES-256-GCM)
Testing pytest, in-memory stack, no mocks

Status

v0.1.4 — Admin Lambda infrastructure scaffolded and tested. User Lambda in progress.

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sgraph_ai_app_send-0.2.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sgraph_ai_app_send-0.2.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file sgraph_ai_app_send-0.2.0.tar.gz.

File metadata

  • Download URL: sgraph_ai_app_send-0.2.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for sgraph_ai_app_send-0.2.0.tar.gz
Algorithm Hash digest
SHA256 1bf45108a7b5cdbafcdc5f4e86abda4b2024065d4818f77f0d2f208a6d0d0f8b
MD5 5317ad378108c0bbd36713b16a55f155
BLAKE2b-256 7ba93f147e0fa733989feeac1ccbc38b5d48ac3d295196fafc1927d7880dca9d

See more details on using hashes here.

File details

Details for the file sgraph_ai_app_send-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for sgraph_ai_app_send-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 19de43efb713fecf090362a7fa4fd13ce1a8e4935ff0f5ac248eba0e7ff11e67
MD5 bcbb52e6d5308e049de46f2a43b555e7
BLAKE2b-256 cb6d27a58089e5986d0e739e5ed26f03c0dc6f5fe86997ee59c99ca52a56ada0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page