A comprehensive Qt-based parking management application that allows tracking of parked vehicles, check-ins, and check-outs in a multi-level parking facility with real-time data persistence.
ParkWise is a professional parking management solution designed for multi-level parking facilities. It provides an intuitive interface for managing vehicle entry and exit, tracking occupancy rates, and maintaining a comprehensive log of all parking activities.
- Secure Authentication: Login system with password encryption and multiple login attempts
- Comprehensive Dashboard: Real-time statistics on parking occupancy and vehicle traffic
- Efficient Vehicle Management:
- Quick park-in with automatic spot allocation
- Easy check-out with vehicle search
- Vehicle tracking by license plate
- Multi-level Parking Visualization: Interactive map of parking spots across multiple levels
- Detailed Reporting: CSV exports of parking activities for record-keeping and analysis
- User Activity Tracking: Complete logs of system usage and administrative actions
- Modern UI: Clean, responsive design with intuitive navigation
- Data Persistence: Reliable storage of all parking data using SQLite database
- Error Handling: Robust validation and error recovery mechanisms
- Operating System: Windows 10/11
- Framework: Qt 6.x or later
- Compiler: C++17 compatible compiler (MinGW 64-bit recommended)
- Database: SQLite support (included with Qt)
- Storage: At least 100MB of free disk space
- Memory: Minimum 2GB RAM
- Download the latest release from the
releasefolder - Extract the ZIP file to a location of your choice
- Run
ParkWise.exeto start the application
- Double-click on
LaunchParkWise.cmdto build and run the application - The script will:
- Check if the application is already built
- Build it if needed (showing build output)
- Launch the application directly
- For a desktop shortcut, create a shortcut to
LaunchParkWise.cmd
- Right-click on
scripts/install.cmdand select "Run as administrator" - The installer will:
- Copy the application to Program Files
- Create a desktop shortcut
- Set up necessary folders
- Launch ParkWise from the desktop shortcut
- Right-click on
scripts/uninstall.cmdand select "Run as administrator" - Confirm the uninstallation when prompted
- The uninstaller will:
- Remove all application files from Program Files
- Delete the desktop shortcut
- Remove application settings from the registry
- Install Qt 6.x with MinGW 64-bit compiler
- Open
ParkWise.proin Qt Creator - Configure the project with your Qt kit
- Click Build > Build Project
- Click Run to start the application
Run the included build script to compile and run the application:
scripts/runme.cmd
- Launch the application
- On first run, a default admin account is created:
- Username:
admin - Password:
admin
- Username:
- Use these credentials to log in
- It's recommended to create a new account through the sign-up option
The application features four main sections accessible via the navigation sidebar:
- Dashboard: Overview of parking statistics and recent activities
- Park-In: Register new vehicles entering the facility
- Check-Out: Process vehicles exiting the facility
- Overview: Visualize parking spots and their current status
- Navigate to the Park-In section
- Enter the vehicle's license plate number
- Select manual or automatic spot allocation
- Confirm to register the vehicle
- Navigate to the Check-Out section
- Enter the license plate number in the search field
- Verify the vehicle details
- Confirm to complete the check-out process
All parking data is automatically saved to CSV files in the following locations:
release/logs/cars_parked.csv: Record of all parked vehiclesrelease/logs/cars_parking.csv: Vehicles currently in the facilityrelease/logs/cars_checked_out.csv: Record of vehicles that have left
To clear all data and start fresh, run the included cleanup script:
scripts/cleanup.cmd
- This will remove all log files from
build/debug/database/logs/ - Clears user credentials and other temporary data
ParkWise/ ├── src/ # Source code │ ├── core/ # Core application logic │ ├── database/ # Database interactions │ ├── resources/ # Application resources │ └── ui/ # User interface components ├── data/ # Data files ├── database/ # Database files ├── scripts/ # Utility scripts └── docs/ # Documentation
-
Login Failures
- Default admin credentials: username
admin, passwordadmin - After three failed attempts, the application will close
- Password reset option is available on the login screen
- Default admin credentials: username
-
Database Errors
- Ensure the application has write permissions to its directory
- If database corruption occurs, run
scripts/cleanup.cmdto reset
-
Building Issues
- Verify Qt 6.x is properly installed
- Check that MinGW 64-bit is in your system PATH
- Ensure all dependencies are properly installed
If you need to reset all application data:
- Close the application
- Run
scripts/cleanup.cmd- This will remove all log files from
build/debug/database/logs/ - Clears user credentials and other temporary data
- This will remove all log files from
- Restart the application
This project is proprietary software developed for academic purposes.
To create a distributable package:
- Build the application using
scripts/runme.cmdor Qt Creator - Run
scripts/package.cmdto create a ZIP file containing all necessary files - The resulting ZIP file can be distributed to end users
- Users can either:
- Extract and run
LaunchParkWise.vbsdirectly - Run
scripts/install.cmdas administrator to install system-wide
- Extract and run