A TypeScript-based web application that uses Puppeteer and Express to scan your local network, view connected devices, and manage device access through a user-friendly interface.
- Network device scanning
- Device blocking and unblocking
- Real-time device status monitoring
- Simple web interface
- RESTful API endpoints
- Clone the repository
- Install dependencies:
npm installTo run the development server:
npm run devGET /api/initialize- Initialize Puppeteer browserGET /api/scan- Scan network for connected devicesPOST /api/block- Block a device- Body:
{ "type": "device_type", "macAddress": "device_mac_address" }
- Body:
POST /api/unblock- Unblock a device- Body:
{ "type": "device_type", "macAddress": "device_mac_address" }
- Body:
GET /api/blocked- Get list of blocked devicesPOST /api/close- Close the browser
To build the project:
npm run buildTo start the production server:
npm start- TypeScript
- Express.js
- Puppeteer
- Node.js
src/
├── index.ts # Main application entry point
├── public/ # Static files
│ └── index.html # Web interface
└── services/ # Business logic
└── puppeteer.service.ts # Puppeteer automation service