ParkPing solves a very common, frustrating modern problem: Blocked Vehicles. When your car is blocked by someone else's vehicle, your only options usually are waiting endlessly, honking aggressively, or hoping they left a phone number on their dashboard.
Leaving personal phone numbers visible on the dashboard is a major privacy and security risk. ParkPing eliminates this risk by replacing phone numbers with secure, anonymous QR Code Stickers.
With ParkPing:
- Register your vehicle and generate a unique QR code.
- Stick the QR code on your car window.
- If your car is blocking someone, they simply Scan the QR code.
- They tap a button on the web app, and you instantly receive a Live In-App Notification (and SMS via Twilio) telling you to move your car.
- Your personal phone number is never exposed to the public.
- π‘οΈ 100% Privacy: Vehicle owners can be contacted without ever exposing their real phone numbers or names.
- β‘ Live Desktop Notifications: Real-time polling and native browser push notifications alert the owner instantly.
- π± Responsive Neon UI/UX: A stunning dark-mode interface with neon accents, optimized for both desktop and mobile devices.
- π‘οΈ Anti-Spam Cooldown: Built-in rate limiting prevents users from spam-pinging the same vehicle owner (1-minute cooldown per vehicle).
- π Secure Authentication: JWT-based user authentication and encrypted passwords.
- π¬ Twilio SMS Ready: Backend is pre-configured to send text messages to vehicle owners (requires Twilio API keys).
- Framework: Angular 18 (Standalone Components)
- Styling: Custom CSS Grid/Flexbox, CSS Variables (Neon Theme)
- Libraries:
angularx-qrcodefor dynamic QR sticker generation - HTTP Client: Built-in Angular HttpClient configured with JWT Bearer Interceptors
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB (Mongoose ORM)
- Security:
bcryptjs(password hashing),jsonwebtoken(auth) - APIs: Twilio SDK for SMS dispatch
Make sure you have the following installed on your machine:
- Node.js (v18 or higher)
- Angular CLI (
npm install -g @angular/cli) - MongoDB (Running locally on
mongodb://localhost:27018or via Atlas)
git clone https://github.com/ravithakur776/Parkping-Project-.git
cd Parkping-Project-Open a terminal in the root directory:
cd backend
npm installCreate a .env file in the /backend directory:
PORT=5001
MONGO_URI=mongodb://localhost:27018/parkping
JWT_SECRET=your_super_secret_jwt_key
TWILIO_ACCOUNT_SID=your_twilio_sid
TWILIO_AUTH_TOKEN=your_twilio_token
TWILIO_PHONE_NUMBER=your_twilio_phoneStart the backend server:
node index.jsOpen a new terminal window:
cd frontend
npm installStart the Angular development server:
ng serveOpen your browser and navigate to http://localhost:4200.
- Sign Up: Create a new account with your Name, Email, Password, and Phone Number.
- Dashboard: Go to your dashboard and click "+ Add Vehicle".
- Generate: Enter your vehicle model and plate number. The app generates a unique QR Code.
- Download & Print: Download the QR code image and stick it to your windshield.
- Scan: Anyone who scans it will be taken to a secure URL (e.g.,
/requests?vehicle=XYZ). - Alert: When they press "Notify Owner", you receive an instant dashboard alert and/or SMS!
Contributions, issues, and feature requests are welcome! Feel free to check issues page.
This project is open-source and available under the MIT License.