Welcome to your own Automatic License Plate Recognition (ALPR) dashboard! This project gives you a powerful, local alternative to Rekor Scout's online dashboard, letting you keep all your license plate data on your own computer instead of in the cloud.
🤖 AI-Powered Development: This entire dashboard was created with Anthropic's Claude Sonnet AI as an experiment in AI-programming. Not a single line of human-written code exists - even this documentation was AI-generated!
Before getting started, make sure you have:
- ✅ Active OpenALPR subscription - You'll need a paid account to use Rekor Scout
- ✅ IP Camera - Any camera that broadcasts its feed over your network
- ✅ Windows computer - On the same network as your camera(s)
- ✅ Basic networking knowledge - Finding IP addresses and configuring ports
📂 Repository Structure: This branch contains the server-side dashboard. For camera software setup, switch to the lite
branch.
First, we'll get the official Rekor Scout software running on your Windows machine. This software does the actual license plate recognition.
- Download the installer: Visit Rekor's download page or go to their main website
- Run the installer: Follow the installation wizard
- Sign in: The installer will prompt you to sign in with your OpenALPR account credentials
- Launch the program: After installation, you should see this interface:
Now we'll connect your IP camera to Rekor Scout:
- Click "Add Camera" in the main interface
- Select camera type: Choose
IP Camera (Manual)
from the dropdown - Enter camera URL: Use the format
http://<IP-ADDR>:<PORT>
- Replace
<IP-ADDR>
with your camera's IP address (e.g.,192.168.1.100
) - Replace
<PORT>
with your camera's port (usually8080
)
- Replace
- Click "Test" to verify the camera feed is working
- Skip credentials if prompted (unless your camera requires authentication)
- Verify the feed: You should see live video from your camera
- Click "Save Camera" once the test is successful
- Name your camera (e.g., "Front Gate", "Parking Lot", etc.)
- Start services: When prompted about starting Rekor services, always click "Yes" to prevent performance issues
🎉 Success! Your camera is now connected and Rekor Scout will automatically start detecting license plates. You can pause detection anytime using the pause button at the top of the interface.
Now for the exciting part - running your own local dashboard that keeps all data on your computer!
- 📊 Data Privacy: All license plate data stays on your computer
- 🚀 Performance: Faster loading and no internet dependency
- 🛠️ Customization: Modify the dashboard to fit your needs
- 💰 Cost Savings: No additional cloud storage fees
-
Navigate to the server folder:
cd path\to\alpr\server
-
Copy the configuration template:
- Find the file named
config.template
- Make a copy and rename it to
config.yaml
- Find the file named
-
Edit your configuration:
- Open
config.yaml
in any text editor - Add your camera IP addresses to the camera list
- Adjust file paths and settings as needed
- Save your changes
- Open
We've made this super easy with an automated setup script:
# One-time setup (installs Python, creates virtual environment, installs dependencies)
.\setup.ps1 setup
# Run the server (use this every time you want to start the dashboard)
.\setup.ps1 run
Alternative manual method:
python3.10 .\alpr_integrated_server.py
Once the server is running, open your web browser and visit:
- 🏠 Main Dashboard:
http://localhost:5000/dashboard
- 📹 Camera Grid View:
http://localhost:5000/cameras
- 📊 API Endpoints:
http://localhost:5000/api/plates
Your dashboard will look like this:
Now we'll tell Rekor Scout to send all license plate data to your local dashboard instead of the cloud.
- Open Rekor Scout (if not already running)
- Navigate to settings: Click Configure → Data Destinations in the top menu
- Select server type: Click on "Other HTTP Server"
- Enter server URL: Type
http://localhost:5000/alpr
in the URL field
- Save the configuration: Click "Save" or "Apply"
🎉 You're all set! Rekor Scout will now send all detected license plates to your local dashboard.
Your local server creates several files to organize the license plate data:
File | Description |
---|---|
alpr_raw_data.jsonl |
Complete JSON data from Rekor Scout (includes heartbeats) |
alpr_parsed_data.jsonl |
Clean license plate data only (customizable) |
event.log |
Human-readable event log |
plates/ folder |
Cropped images of detected license plates |
All file names and locations can be customized in your config.yaml
file.
Your local dashboard includes:
- 📊 Real-time plate detection display
- 🎥 Live camera feeds (single view and grid view)
- 🔍 Search and filter capabilities
- 📈 Statistics and analytics
- 🔄 Auto-refresh functionality
- 📱 Mobile-responsive design
- 🚨 Real-time notifications for new detections
- Verify your camera's IP address and port
- Make sure your camera and computer are on the same network
- Try accessing
http://<camera-ip>:8080
directly in your browser
- Make sure Python is installed (
python --version
) - Run the setup script:
.\setup.ps1 setup
- Check that port 5000 isn't being used by another application
- Ensure Rekor Scout is running and not paused
- Verify the data destination is set to
http://localhost:5000/alpr
- Check that your camera has a clear view of license plates
- Check the console output for error messages
- Visit the status page:
http://localhost:5000/stats
- Review the
event.log
file for detailed information
Once everything is running:
- Test the system: Drive a car past your camera to see license plate detection in action
- Explore the dashboard: Try different views, filters, and sorting options
- Customize settings: Modify
config.yaml
to fit your specific needs - Add more cameras: Repeat the camera setup process for additional monitoring points
- Monitor performance: Use the built-in statistics to track system performance
Enjoy your new local ALPR dashboard! 🚗✨