Nairametrics Platform Evolution - Roadmap Proposal

Technology Choices and Decision Framework

This document expands the decision framework and records technology comparisons and rationale.

Evaluation Criteria

  • Team expertise and learning curve
  • Community/ecosystem maturity and documentation quality
  • Performance and scalability
  • SEO/UX impact (for web)
  • Code reuse potential (web/mobile/shared)
  • Total cost of ownership (hosting, licenses, dev time)
  • Long-term viability and hiring market

Frontend Web Frameworks

Criteria Next.js (Chosen) Nuxt.js Remix Gatsby
SEO (SSR/SSG/ISR) Excellent Excellent Excellent Good (SSG first)
Ecosystem Very large Large Growing Declining
Performance profile Excellent Excellent Excellent Good
Learning curve Medium Medium Medium Medium
Hosting Vercel native Vercel/Netlify Fly.io/Node Static/CDN
Decision SELECTED Alt Future option Not ideal

Rationale: ISR + App Router flexibility, ecosystem maturity, Vercel-native deployments.

Mobile Frameworks

Criteria Expo + React Native (Chosen) Flutter Native
Code reuse (web) High (TS) Low (Dart) None
Performance Very good Excellent Best
OTA updates EAS Update Limited None
Ecosystem Very large Large Large
Team expertise High (JS/TS) Medium (Dart) Medium
Decision SELECTED Alternate Not cost-effective

Rationale: Maximizes reuse of TS models, utilities, and business logic with web.

State Management (Web)

Criteria TanStack Query + Zustand (Chosen) Redux Toolkit MobX Recoil
Server state Excellent Good Good Good
Client state Good Good Good Fair
Complexity Low Medium Medium Medium
Bundle size Small Medium Small Medium
Decision SELECTED Alternate Alternate Avoid

Rationale: Separation of concerns and minimal overhead.

Backend/API

Criteria Laravel (Chosen) Node/Express NestJS Go
Team expertise High Medium Medium Medium
Ecosystem Excellent (PHP) Excellent Good Good
Performance Very good Good Good Excellent
Admin tooling Filament/Nova Strapi (JS), custom Custom Custom
Decision SELECTED Alternate Alternate Specialized

Rationale: Integrates well with WordPress/Acorn, strong ecosystem.

  • Phase B: WordPress native search + cached queries
  • Phase C: Algolia or Elasticsearch (cost/performance trade-offs)

Databases

  • Phase B: MySQL/MariaDB (existing WP), Laravel adjunct DB for analytics
  • Phase C: MySQL primary with read replicas; consider Postgres if needed (migrations impact)

Hosting/Infra

  • Web: Vercel (Next.js)
  • Mobile: EAS (Expo)
  • API: Managed VPS/Forge or containerized on ECS/Fargate
  • Cache/Queues: Managed Redis
  • Search: Algolia SaaS (earlier), Elasticsearch (self/managed) later

Decision Log (ADR-style)

  • ADR-001: Choose Next.js for web (2025-10-09)
  • ADR-002: Choose Expo RN for mobile (2025-10-09)
  • ADR-003: Choose Laravel for API (2025-10-09)
  • ADR-004: Choose Redis for cache (2025-10-09)
  • ADR-005: Choose Filament for admin (Phase C) (2025-10-09)