mirror of
https://github.com/PR0M3TH3AN/SeedPass.git
synced 2026-10-27 16:02:05 +00:00
1.6 KiB
1.6 KiB
SeedPass Architecture
SeedPass follows a layered design that keeps the security-critical logic isolated in a reusable core package. Interfaces like the command line tool, REST API and graphical client act as thin adapters around this core.
Core Components
seedpass.core– houses all encryption, key derivation and vault management code.VaultServiceandEntryService– thread-safe wrappers exposing the main API.PasswordManager– orchestrates vault operations, migrations and Nostr sync.
Adapters
- CLI/TUI – implemented in
seedpass.cli. Useseedpass --helpandseedpass <command-group> --helpfor command-level docs. - FastAPI server – defined in
seedpass.api. - BeeWare GUI – located in
seedpass_gui. Packaging and install notes are in packaging.md.
Planned Extensions
SeedPass is built to support additional adapters. Planned or experimental options include:
- A browser extension communicating with the API
- Automation scripts using the CLI
- Additional vault import/export helpers are available through the CLI (
seedpass vault --help) and implemented inseedpass.cli.vault.
Overview Diagram
graph TD
core["seedpass.core"]
cli["CLI / TUI"]
api["FastAPI server"]
gui["BeeWare GUI"]
ext["Browser extension"]
cli --> core
api --> core
gui --> core
ext --> api
All adapters depend on the same core, allowing features to evolve without duplicating logic across interfaces.