A modern React-based application for tracking and managing vehicles of interest, converted from Java Swing to provide a responsive, web-based interface for law enforcement personnel.
VehiclesOfInterest.mp4
Note: To add your video demo, upload the MP4 file to GitHub Issues or Releases, then replace
your-video-id-herewith the actual asset ID from the URL GitHub provides.
- Real-time Metrics: Live tracking of total vehicles, alerts, and statistics
- Visual Analytics: Interactive charts and data visualizations
- Quick Navigation: Easy access to all major features
- Comprehensive Database: Store detailed vehicle information
- Advanced Search: Multi-field search and filtering capabilities
- Alert Categories: Support for Amber Alerts, Silver Alerts, and Stolen Vehicle tracking
- Owner Information: Contact details and ownership records
- Amber Alerts: Missing children vehicle associations
- Silver Alerts: Missing elderly person vehicle tracking
- Stolen Vehicles: Comprehensive stolen vehicle database
- Custom Reasons: Configurable reasons for vehicle interest
- Reason Management: Add, edit, and delete alert categories
- Make & Model Database: Comprehensive vehicle manufacturer database
- User Management: Administrative controls and permissions
- System Monitoring: Health checks and performance metrics
- React 18 - Modern JavaScript framework
- TypeScript - Type-safe development
- Tailwind CSS - Utility-first CSS framework
- Radix UI - Accessible component library
- Lucide React - Beautiful icon library
- Vite - Fast build tool and development server
- ESLint - Code linting and quality assurance
- Prettier - Code formatting
- PostCSS - CSS processing and optimization
- Remotion - Programmatic video creation
- React-based Animations - Smooth transitions and effects
Before running this application, make sure you have:
- Node.js (v18 or higher)
- npm (v9 or higher)
- Modern web browser (Chrome, Firefox, Safari, Edge)
git clone <repository-url>
cd VehiclesOfInterestDesktopnpm installnpm run devThe application will be available at http://localhost:3000
To work with the promotional video:
cd remotion
npm install
npm run start # Opens Remotion Studio at http://localhost:3001npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production buildnpm run type-check- Run TypeScript type checkingnpm run lint- Run ESLint code analysis
npm run start- Launch Remotion Studionpm run render- Render the main promotional videonpm run render-hello- Render the hello world demo
- Dashboard: View system overview and key metrics
- Vehicles: Browse, search, and manage vehicle records
- Add Vehicle: Register new vehicles of interest
- Reasons: Configure alert categories and descriptions
- Makes & Models: Manage vehicle manufacturer database
- Admin: Access administrative tools and settings
-
Adding a Vehicle:
- Navigate to Vehicles β Add New Vehicle
- Fill in license plate, make, model, and reason
- Save to add to the tracking system
-
Searching Records:
- Use the search bar for quick lookups
- Apply filters by reason, make, or color
- Click any vehicle for detailed information
-
Managing Alerts:
- Configure alert reasons in the Reasons section
- Associate vehicles with specific alert types
- Monitor active alerts from the dashboard
VehiclesOfInterestDesktop/
βββ src/
β βββ components/ # React components
β β βββ ui/ # Reusable UI components
β β βββ Dashboard/ # Dashboard-specific components
β β βββ Vehicles/ # Vehicle management components
β β βββ Admin/ # Administrative components
β βββ assets/ # Static assets and images
β βββ styles/ # Global styles and themes
β βββ config/ # Configuration files
βββ remotion/ # Video production files
β βββ src/ # Video compositions
β βββ out/ # Rendered videos
βββ public/ # Public static files
βββ docs/ # Documentation
This application represents a complete modernization of the original Java Swing desktop application:
- β UI Framework: Java Swing β React + TypeScript
- β Styling: Custom Java Graphics β Tailwind CSS
- β State Management: Java Objects β React Context + Hooks
- β Data Layer: JDBC β Modern REST API ready architecture
- β Build System: Ant/Maven β Vite
- β Development Experience: IDE-dependent β Hot reload + modern tooling
- π Web-based: Accessible from any modern browser
- π± Responsive: Works on desktop, tablet, and mobile devices
- β‘ Performance: Fast loading and smooth interactions
- π¨ Modern UI: Clean, professional interface design
- π§ Maintainable: Modern development practices and tooling
- π Scalable: Easy to extend and modify
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For questions, issues, or support:
- Create an issue in the GitHub repository
- Contact the development team
- Review the documentation in the
/docsdirectory
- Maryland State Police - For the original application requirements
- Figma Design System - For the initial UI/UX components
- React Community - For the amazing ecosystem and tools
- Remotion - For enabling programmatic video creation