-
Notifications
You must be signed in to change notification settings - Fork 0
Technologies
-
Containerization Platform: Docker
Justification: Enables consistent development and deployment environments by packaging the application and its dependencies into containers.
-
Container Orchestration: Docker Compose
Justification: Simplifies the management of multi-container applications by defining services (frontend, backend, database) in a single configuration file, making local development and testing easier.
-
CI/CD Platform: GitHub Actions
Justification: Automates workflows such as building, testing, and linting on every push or pull request, ensuring code quality and reducing manual effort in the development lifecycle.
-
Frontend Framework: React Native
Justification: Enables the development of a single codebase that deploys natively to both iOS, Android, and the Web, significantly reducing development time while maintaining high performance.
-
Build System: Expo
Justification: Streamlines the build and deployment process with a robust set of pre-configured tools, allowing for rapid prototyping and easy testing across physical devices.
-
Language: Typescript
Justification: Provides static type checking to catch errors early during development, ensuring better code maintainability and safer refactoring for the team.
-
Styling: NativeWind
Justification: Allows the use of utility-first Tailwind CSS styling within React Native, ensuring consistent design and faster UI implementation across the application.
-
Runtime: Node.js
Justification: Offers a non-blocking, event-driven architecture ideal for handling concurrent API requests and scalable backend services in a unified JavaScript/TypeScript environment.
-
Language: Typescript
Justification: Enforces type safety across the backend logic, reducing runtime errors and facilitating seamless type-sharing with the frontend codebase.
-
REST API Framework: Hono
Justification: A lightweight and ultrafast web standard framework that minimizes overhead, providing a simple API for handling HTTP requests.
-
Database: PostgreSQL
Justification: A robust, open-source relational database selected for its reliability, ACID compliance, and ability to handle complex relational data regarding flights and user claims.
-
ORM: Drizzle
Justification: A lightweight TypeScript ORM that provides type-safe database access with zero runtime dependencies, ensuring efficient queries and easy schema management.
-
Authentication Framework: Better-Auth
Justification: Provides a comprehensive, TypeScript-first authentication solution with features like session management and social logins, significantly improving efficiency while ensuring secure access control.
-
Flight Tracking API: Airlabs
Justification: Provides real-time flight status and tracking data, enabling automated claim validation and monitoring of flight disruptions.
-
Email Service: Azure Communication Services
Justification: Supports reliable email delivery and communication with users regarding claim updates, notifications and password recovery.
-
Webhook: Postmark
Justification: Ensures fast and dependable email webhooks, allowing programmatic handling of email events like deliveries.
-
Centralized Logging: Sentry
Link to configuration file Justification: Monitors errors and performance in production & development, enabling rapid debugging and issue tracking.
-
Docker Container Logging: Dozzle
Justification: Allows all team members to view each containers logs in order to properly monitor, detect, and debug issues in the production deployment.
-
Application Logging: Winston
Justification: A logging library for Node.js that supports multiple transports (console, files, external services), structured logs, and log levels, making it ideal for debugging, monitoring, and maintaining backend services.
-
Workflow Platform: n8n
Justification: A workflow automation tool that orchestrates complex AI and data processes visually, facilitating easy modification and extension to accommodate any future use cases.
-
AI Provider: Gemini
Justification: Leveraged for its large context window and strong reasoning capabilities to generate detailed flight claim responses and evaluate airline correspondence.
-
OCR: Mistral OCR
Justification: A specialized model for optical character recognition that accurately extracts text and structured data from uploaded flight documents and tickets.
-
Linter: ESLint
Justification: Statically analyzes code to find and fix problems, ensuring adherence to coding standards and best practices across the repository.
-
Formatter: Prettier
Justification: Automatically formats code to enforce a consistent style, improving readability and reducing friction during code reviews.
-
Git Hooks: Husky
Justification: Automates pre-commit and pre-push checks (such as linting, formatting, and tests), ensuring code quality is enforced before changes are added to the repository.
-
Testing Framework (Frontend + n8n): Jest
Justification: A testing framework for unit and integration testing, providing built-in mocking, assertions, and strong ecosystem support for reliable frontend and n8n testing.
-
Testing Framework (Backend): Vitest
Justification: A testing framework for backend automated testing that is TypeScript-friendly, which helps the team run reliable unit/integration tests.