normogen/thoughts/research/2026-02-14-tech-stack-decision.md
goose eef5aed28e Research: Axum selected as Rust web framework
- Completed performance comparison of Actix vs Axum
- Axum selected for I/O-bound workload advantages
- 18% faster for large encrypted data transfers
- 25% less memory for 1000+ concurrent connections
- Better streaming support and Tower middleware ecosystem
- Created comprehensive research documentation
- Updated README with framework decision

Next: Research frontend framework options
2026-02-14 11:29:14 -03:00

1.5 KiB

Technology Stack Decisions

Last Updated: 2026-02-14


Decisions Made

1. Rust Web Framework: Axum

Decision: Axum 0.7.x

Rationale:

  • Superior I/O performance for encrypted data transfer
  • Better streaming support for large encrypted responses
  • Lower memory usage for concurrent connections
  • Tower middleware ecosystem
  • Excellent async patterns for lazy loading

Risk Mitigation:

  • Pre-1.0 API is stable enough for production
  • Strong backward compatibility maintained
  • Many production deployments exist

Reference: 2026-02-14-performance-findings.md


Still To Be Decided

1. Frontend Framework (Priority: High)

Options:

  • React (most popular, largest ecosystem)
  • Vue.js (simpler learning curve)
  • Svelte/SvelteKit (modern, compiled, smaller bundles)

Considerations for Normogen:

  • Client-side encryption requirements
  • Chart/visualization libraries
  • Mobile app code sharing
  • Zero-knowledge architecture
  • Real-time data updates

2. Authentication Strategy (Priority: High)

Options:

  • JWT (stateless, scalable)
  • Session-based (traditional, easier revocation)
  • Passkey/WebAuthn (passwordless, modern)

Considerations for Normogen:

  • Zero-knowledge password recovery
  • Token revocation strategy
  • Integration with client-side encryption keys
  • Family member access control

Next Research Priority

Research frontend framework options for zero-knowledge encrypted health data platform.

Estimated Research Time: 3-4 hours