Go to file
David 4f0d6f8f08 fix: add StorageModule import to CsvRateModule for S3 support
- Export S3StorageAdapter directly from StorageModule
- Import StorageModule and ConfigModule in CsvRateModule
- Fix dependency injection for S3StorageAdapter in CSV controllers
2025-11-17 20:52:27 +01:00
.claude feat: add MinIO storage support for CSV rate files 2025-11-17 20:12:21 +01:00
.github/workflows feat: add Discord notifications for CI/CD pipeline status 2025-11-17 14:42:00 +01:00
apps fix: add StorageModule import to CsvRateModule for S3 support 2025-11-17 20:52:27 +01:00
docker fix v0.2 2025-11-12 18:00:33 +01:00
infra/postgres first commit 2025-10-07 18:39:32 +02:00
postman feature 2025-11-04 07:30:15 +01:00
scripts fix v0.2 2025-11-12 18:00:33 +01:00
.gitignore fix: add missing domain ports files that were gitignored 2025-11-17 01:50:05 +01:00
.prettierignore first commit 2025-10-07 18:39:32 +02:00
.prettierrc first commit 2025-10-07 18:39:32 +02:00
1536w default.svg fix landing page , login , register 2025-10-31 12:38:05 +01:00
add-email-to-csv.py fix v0.2 2025-11-12 18:00:33 +01:00
ARCHITECTURE.md feat: Phase 4 - Production-ready security, monitoring & testing infrastructure 2025-10-14 18:46:18 +02:00
BOOKING_WORKFLOW_TODO.md fix v0.2 2025-11-12 18:00:33 +01:00
CARRIER_API_RESEARCH.md feature csv done 2025-10-24 16:01:09 +02:00
CLAUDE.md fix: convert TypeScript path aliases to relative imports for CI/CD compatibility 2025-11-16 03:21:23 +01:00
COMPLETION-REPORT.md first commit 2025-10-07 18:39:32 +02:00
CSV_API_TEST_GUIDE.md feature csv done 2025-10-24 16:01:09 +02:00
CSV_BOOKING_WORKFLOW_TEST_PLAN.md fix v0.2 2025-11-12 18:00:33 +01:00
CSV_RATE_SYSTEM.md feature csv done 2025-10-24 16:01:09 +02:00
DASHBOARD_API_INTEGRATION.md feature 2025-11-04 07:30:15 +01:00
DEPLOYMENT.md feat: Phase 4 - Production-ready security, monitoring & testing infrastructure 2025-10-14 18:46:18 +02:00
DISCORD_NOTIFICATIONS.md docs: add Discord notifications setup guide 2025-11-17 14:42:39 +01:00
docker-compose.dev.yml fix chnage 2025-10-21 16:29:58 +02:00
docker-compose.test.yml fix v0.2 2025-11-12 18:00:33 +01:00
docker-compose.yml fix v0.2 2025-11-12 18:00:33 +01:00
elementmissingphase2.md feature fix 2025-10-20 12:30:08 +02:00
EMAIL_IMPLEMENTATION_STATUS.md fix v0.2 2025-11-12 18:00:33 +01:00
GUIDE_TESTS_POSTMAN.md feature fix 2025-10-20 12:30:08 +02:00
IMPLEMENTATION_COMPLETE.md feature csv done 2025-10-24 16:01:09 +02:00
IMPLEMENTATION_SUMMARY.md fix: resolve all test failures and TypeScript errors (100% test success) 2025-10-14 14:48:50 +02:00
INDEX.md first commit 2025-10-07 18:39:32 +02:00
INSTALLATION-COMPLETE.md fix main 2025-10-08 10:47:46 +02:00
INSTALLATION-STEPS.md first commit 2025-10-07 18:39:32 +02:00
MANUAL_TEST_INSTRUCTIONS.md feature csv done 2025-10-24 16:01:09 +02:00
NEXT-STEPS.md first commit 2025-10-07 18:39:32 +02:00
package.json first commit 2025-10-07 18:39:32 +02:00
PHASE2_AUTHENTICATION_SUMMARY.md feature fix 2025-10-20 12:30:08 +02:00
PHASE2_BACKEND_COMPLETE.md feature phase 2 2025-10-10 15:07:05 +02:00
PHASE2_COMPLETE_FINAL.md feature phase 2 2025-10-10 15:07:05 +02:00
PHASE2_COMPLETE.md feature fix 2025-10-20 12:30:08 +02:00
PHASE2_FINAL_PAGES.md feature phase 2 2025-10-10 15:07:05 +02:00
PHASE2_FRONTEND_PROGRESS.md feature phase 2 2025-10-10 15:07:05 +02:00
PHASE3_COMPLETE.md feature phase 3 2025-10-13 13:58:39 +02:00
PHASE4_REMAINING_TASKS.md docs: Phase 4 remaining tasks analysis - complete roadmap to production 2025-10-15 10:17:00 +02:00
PHASE4_SUMMARY.md docs: Update Phase 4 summary with GDPR & testing progress (85% complete) 2025-10-14 19:57:12 +02:00
PHASE-1-PROGRESS.md feature fix 2025-10-20 12:30:08 +02:00
PHASE-1-WEEK5-COMPLETE.md feature fix 2025-10-20 12:30:08 +02:00
PRD.md first commit 2025-10-07 18:39:32 +02:00
PROGRESS.md feature fix 2025-10-20 12:30:08 +02:00
QUICK-START.md first commit 2025-10-07 18:39:32 +02:00
README.md first commit 2025-10-07 18:39:32 +02:00
READY_FOR_TESTING.md feature csv done 2025-10-24 16:01:09 +02:00
READY.md first commit 2025-10-07 18:39:32 +02:00
RESUME_FRANCAIS.md feature fix 2025-10-20 12:30:08 +02:00
SESSION_SUMMARY.md feature phase 2 2025-10-10 15:07:05 +02:00
SPRINT-0-COMPLETE.md first commit 2025-10-07 18:39:32 +02:00
SPRINT-0-FINAL.md first commit 2025-10-07 18:39:32 +02:00
SPRINT-0-SUMMARY.md first commit 2025-10-07 18:39:32 +02:00
START-HERE.md first commit 2025-10-07 18:39:32 +02:00
TEST_COVERAGE_REPORT.md fix: resolve all test failures and TypeScript errors (100% test success) 2025-10-14 14:48:50 +02:00
TEST_EXECUTION_GUIDE.md docs: Test Execution Guide - comprehensive testing strategy (Phase 4) 2025-10-14 19:55:17 +02:00
TODO.md first commit 2025-10-07 18:39:32 +02:00
USER_DISPLAY_SOLUTION.md feature 2025-11-04 07:30:15 +01:00
USER_INFO_DEBUG_ANALYSIS.md feature 2025-11-04 07:30:15 +01:00
WINDOWS-INSTALLATION.md fix main 2025-10-08 10:47:46 +02:00

Xpeditis - Maritime Freight Booking Platform

Xpeditis is a B2B SaaS platform for freight forwarders to search, compare, and book maritime freight in real-time.


START HERE

New to the project? Read START-HERE.md - Get running in 10 minutes!


🚀 Quick Start

Prerequisites

  • Node.js >= 20.0.0
  • npm >= 10.0.0
  • Docker & Docker Compose
  • PostgreSQL 15+
  • Redis 7+

Installation

# Install dependencies
npm install

# Start infrastructure (PostgreSQL + Redis)
docker-compose up -d

# Setup environment variables
cp apps/backend/.env.example apps/backend/.env
cp apps/frontend/.env.example apps/frontend/.env

# Run database migrations
npm run backend:migrate

# Start backend (development)
npm run backend:dev

# Start frontend (development)
npm run frontend:dev

Access Points

📁 Project Structure

xpeditis/
├── apps/
│   ├── backend/          # NestJS API (Hexagonal Architecture)
│   │   └── src/
│   │       ├── domain/          # Pure business logic
│   │       ├── application/     # Controllers & DTOs
│   │       └── infrastructure/  # External adapters
│   └── frontend/         # Next.js 14 App Router
├── packages/
│   ├── shared-types/     # Shared TypeScript types
│   └── domain/           # Shared domain logic
└── infra/                # Infrastructure configs

🏗️ Architecture

This project follows Hexagonal Architecture (Ports & Adapters) principles:

  • Domain Layer: Pure business logic, no external dependencies
  • Application Layer: Use cases, controllers, DTOs
  • Infrastructure Layer: Database, external APIs, cache, email, storage

See CLAUDE.md for detailed architecture guidelines.

🛠️ Development

Backend

npm run backend:dev          # Start dev server
npm run backend:test         # Run tests
npm run backend:test:watch   # Run tests in watch mode
npm run backend:test:cov     # Generate coverage report
npm run backend:lint         # Lint code
npm run backend:build        # Build for production

Frontend

npm run frontend:dev         # Start dev server
npm run frontend:build       # Build for production
npm run frontend:test        # Run tests
npm run frontend:lint        # Lint code

📚 Documentation

Getting Started

Architecture & Guidelines

Project Planning

API Documentation

  • API Docs 📖 - OpenAPI/Swagger (when running)

🧪 Testing

# Run all tests
npm run test:all

# Run backend tests
npm run backend:test

# Run frontend tests
npm run frontend:test

# E2E tests (after implementation)
npm run test:e2e

🔒 Security

  • All passwords hashed with bcrypt (12 rounds minimum)
  • JWT tokens (access: 15min, refresh: 7 days)
  • HTTPS/TLS 1.2+ enforced
  • OWASP Top 10 protection
  • Rate limiting on all endpoints
  • CSRF protection

📊 Tech Stack

Backend

  • Framework: NestJS 10+
  • Language: TypeScript 5+
  • Database: PostgreSQL 15+
  • Cache: Redis 7+
  • ORM: TypeORM
  • Testing: Jest, Supertest
  • API Docs: Swagger/OpenAPI

Frontend

  • Framework: Next.js 14+ (App Router)
  • Language: TypeScript 5+
  • Styling: Tailwind CSS
  • UI Components: shadcn/ui
  • State: React Query (TanStack Query)
  • Forms: React Hook Form + Zod
  • Testing: Jest, React Testing Library, Playwright

🚢 Carrier Integrations

MVP supports the following maritime carriers:

  • Maersk
  • MSC
  • CMA CGM
  • Hapag-Lloyd
  • ONE (Ocean Network Express)

📈 Monitoring & Logging

  • Logging: Winston / Pino
  • Error Tracking: Sentry
  • APM: Application Performance Monitoring
  • Metrics: Prometheus (planned)

🔧 Environment Variables

See .env.example files in each app for required environment variables.

🤝 Contributing

  1. Create a feature branch
  2. Make your changes
  3. Write tests
  4. Run linting and formatting
  5. Submit a pull request

📝 License

Proprietary - All rights reserved

👥 Team

Built with ❤️ by the Xpeditis team


For detailed implementation guidelines, see CLAUDE.md.