2 Free / Framework-independent domain and portable contracts.
Shared core
Core, application, auth, data-provider, database, and UI packages keep exact money rules, data ports, and composition separate from web and native runtimes. They live in the twofree-packages repository and publish to GitHub Packages as @camircode/twofree-*, so the API and the web app consume the same declared version.
Core defines money, entities, and rules without framework dependencies.
Application coordinates use cases through data and identity ports.
Web and native runtimes connect adapters without changing the domain.

How I built it
The separation makes monetary rules and contracts testable without booting a complete application. Shared packages establish one-way dependencies and let PostgreSQL, SQLCipher, or guest mode implement the same port.