SIST (Ship Intelligence & Suspicion Tracker) - A modern AIS monitoring and analysis platform designed to detect suspicious vessel activity, anomalies, and patterns in maritime data.
SIST provides a powerful interface for tracking, analysing, and flagging vessel behaviour using AIS (Automatic Identification System) data.
The platform is built with a Laravel backend and a React + Inertia.js frontend, offering a fast, responsive, and scalable architecture for real-time maritime intelligence.
It currently supports:
- Monitoring vessel movement and behaviour in real time.
- Detecting anomalies and suspicious activity through external data source integrations.
- Visualising maritime data in a clear, actionable way.
- Providing a foundation for further intelligence tooling.
AIS Coverage Limits - SIST's AIS tracking is subject to terrestrial and satellite reception limits. Coverage is not 100% global, and vessel data may experience latency or intermittent gaps depending on region.
Data Integrity - Information is aggregated from public, open-source maritime feeds. SIST provides this for tracking and research purposes, but absolute data integrity depends on external source accuracy.
Developmental Status - SIST is a new platform undergoing active testing. Features, analytics, and data accuracy are currently under evaluation.
Hosted docs: https://sist.tristanbudd.com/docs
Local docs: Available under http://127.0.0.1:8000/docs or http://127.0.0.1:8000/documentation after running the development server.
- Real Time Fleet Tracking: View active vessels on a dynamic, high performance map.
- Hybrid Search System: Search for active and offline vessels with a highly responsive search bar.
- Detailed Vessel Profiles: Access deep insights into a ship's current status, voyage details, and historical route data.
- Sanctions Compliance Verification: Automatically check vessel identifiers against official sanction lists and dark fleet networks.
- Historical Trajectory Analysis: Select custom time windows to analyse past movement and waypoints.
- Suspicion Scoring: Vessel analysis to assess a proprietary suspicion score and track strange behaviour. Will consider implementing AI to assist with anomaly detection.
- Ships of Interest Panel: A dedicated interface for managing flagged or closely watched vessels.
- Analysis Tooling: Additional slide out panels on the left to provide further map and analysis capabilities.
- Backend: Laravel (PHP ≥ 8.3)
- Frontend: React 18 + Inertia.js
- Build Tooling: Vite
- Styling: Tailwind CSS
- Linting & Formatting: ESLint, Prettier, Laravel Pint
- Git Hooks: Husky + lint-staged
git clone https://github.com/tristanbudd/sist.git
cd sistcomposer installpnpm installcp .env.example .env
Update your .env file:
APP_NAME=SIST
APP_ENV=local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=sist
DB_USERNAME=root
DB_PASSWORD=php artisan key:generatephp artisan migratephp artisan servepnpm devpnpm dev # Start Vite dev server
pnpm build # Build frontend assets
pnpm lint # Run ESLint
pnpm lint:fix # Fix lint issues
pnpm format # Format frontend files
pnpm format:check # Check formatting
pnpm format:php # Format PHP (Laravel Pint)
pnpm format:php:test # Check PHP formatting- Uses modern Laravel + Inertia architecture (SPA without full API separation)
- Frontend is located in resources/js
- Tailwind CSS is configured via Vite
- Husky + lint-staged enforce code quality on commits
Contributions are welcome.
- Fork the repository
- Create a feature branch
- Commit your changes
- Ensure linting and formatting pass
- Open a pull request
Please read CONTRIBUTING.md for more details.
If you discover a vulnerability, please open a private issue or follow SECURITY.md.
