MCPcopy Index your code
hub / github.com/dualshock-tools/dualshock-tools.github.io

github.com/dualshock-tools/dualshock-tools.github.io @v2.25

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.25 ↗ · + Follow
578 symbols 1,482 edges 24 files 237 documented · 41%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DualShock Calibration GUI

A web-based calibration tool for PlayStation DualShock 4, DualSense, and DualSense Edge controllers using the WebHID API.

Features

  • Controller connection via WebHID API
  • Stick calibration and range calibration
  • Input testing and visualization
  • Battery status display
  • Multi-language support (20+ languages)
  • Progressive Web App capabilities

Development

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn
  • Modern browser with WebHID support (Chrome/Edge)

Getting Started

  1. Install dependencies:

bash npm install

  1. Build the application:

bash npm run build

  1. Start the development server:

bash npm run start

The app will be available at https://localhost:8443

Development Scripts

  • npm run build - Build the application for development
  • npm run build:prod - Build the application for production
  • npm run clean - Clean the dist directory
  • npm run serve:https - Serve the built app over HTTPS (required for WebHID)
  • npm run serve - Serve the built app over HTTP (WebHID won't work)
  • npm run start - Build and serve the app
  • npm run dev:full - Build, watch for changes, and serve with auto-reload
  • npm run watch - Watch for file changes and rebuild

Development Workflow

For active development with auto-rebuild:

npm run dev:full

This will:

  1. Build the application
  2. Start watching for file changes
  3. Serve the app over HTTPS at https://localhost:8443
  4. Automatically rebuild when files change

Important Notes

  • HTTPS Required: The WebHID API requires HTTPS. The development server uses self-signed certificates.
  • Browser Security: You may need to accept the self-signed certificate warning in your browser.
  • Controller Support: Only works in browsers with WebHID support (Chrome, Edge, Opera).

Project Structure

  • js/ - Source JavaScript files
  • css/ - Source CSS files
  • templates/ - HTML template files
  • lang/ - Translation files
  • assets/ - SVG assets
  • dist/ - Built application (generated)

Build System

The project uses Gulp for building:

  • JavaScript bundling with Rollup
  • CSS concatenation and minification
  • HTML processing and minification
  • Asset optimization
  • Development vs production builds

Core symbols most depended-on inside this repo

l
called by 181
js/translations.js
sendFeatureReport
called by 51
js/controllers/base-controller.js
receiveFeatureReport
called by 46
js/controllers/base-controller.js
sleep
called by 37
js/utils.js
dec2hex32
called by 29
js/utils.js
toggle
called by 22
js/modals/finetune-modal.js
dec2hex
called by 16
js/utils.js
loadTemplate
called by 12
js/template-loader.js

Shape

Method 378
Function 168
Class 32

Languages

TypeScript98%
Python2%

Modules by API surface

js/modals/finetune-modal.js85 symbols
js/modals/quick-test-modal.js75 symbols
js/core.js64 symbols
js/controller-manager.js44 symbols
js/controllers/ds5-controller.js41 symbols
js/controllers/ds4-controller.js34 symbols
js/controllers/base-controller.js34 symbols
js/controllers/vr2-controller.js33 symbols
js/modals/calib-range-modal.js27 symbols
js/modals/calib-center-modal.js22 symbols
js/controllers/ds5-edge-controller.js16 symbols
js/utils.js15 symbols

For agents

$ claude mcp add dualshock-tools.github.io \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact