Sign inSign up

jodurpar/dsdevicedetection

By jodurpar

Updated 7 months ago

Image
0

318

jodurpar/dsdevicedetection repository overview

DsDeviceDetection Microservice v2 (Remastered)

A high-performance, autonomous, and extensible device detection service built with Node.js, TypeScript, and Express.

This version 2.0 has been redesigned from scratch following SOLID, Clean Code principles and a Data-Driven architecture, allowing scalability without modifying the core engine.

Features

  • Architecture: Implementation using Strategy Pattern and Chain of Responsibility.
  • Data-Driven: Detection based on JSON signatures loaded in memory (Ultra-fast).
  • Client Hints support: Supports the latest Google standards (Sec-CH-UA-*).
  • Zero-DB: No external databases required; everything runs within the container.
  • Web UI: Integrated minimalist dashboard for quick testing.
  • OpenAPI 3.0: Complete interactive documentation with Swagger UI.
  • Docker Ready: Optimized multi-stage image based on Alpine.

Installation and Deployment

docker-compose up --build

The API will be available at http://localhost:15230.

Local Development
  1. Install dependencies: npm install
  2. Start dev mode: npm run dev
  3. Build for production: npm run build
  4. Start production: npm start

Usage

Main Endpoints
  • GET/POST /api/v1/detect: Detects the device.
    • You can send the useragent as a query param or in standard headers.
    • Supports Client Hints headers for better precision in modern versions of Chrome/Edge.
  • Web Page /: Visual interface for manual analysis.
  • Documentation /docs: Swagger UI with the OpenAPI contract.

Contributions

This project grows thanks to its community. If you find a device, operating system, or browser that is not correctly detected, you can easily add it by editing the signatures file.

Check the Contribution Guide to learn how to add new signatures in seconds.

Copyright © 2026 José Durán Pareja. Released under the MIT License.

IMPORTANT NOTICE: This software is provided "as is". Detection accuracy depends on the data signatures. For more details on attribution and disclaimers, see the NOTICE file.

Tag summary

Content type

Image

Digest

sha256:4bb73c1a3

Size

57.4 MB

Last updated

7 months ago

docker pull jodurpar/dsdevicedetection