Skip to main content

Technology Stack

We chose a stack that prioritizes Type Safety and Reliability.

Core Framework

  • AdonisJS 6: A robust Node.js web framework. We chose Adonis over Express/NestJS because it includes everything out of the box (ORM, Auth, Validation, Testing), ensuring a consistent coding style across the team.
  • TypeScript: 100% of the codebase is strict-typed.

Database & ORM

  • MySQL 8: The primary relational store.
  • Lucid ORM: An Active Record ORM similar to Laravel Eloquent.
  • Migrations: Database schema is version-controlled via code.

Messaging

  • Redis: Used for:
    • Session Storage: Fast user session lookups.
    • Pub/Sub: Receiving STRESSED alerts from the Vision system instantly.
    • Queues: Handling background jobs (e.g. sending emails).

Real-Time

  • Socket.io: Used for bidirectional communication with clients (Live Dashboard updates).