FindMyCar
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
new-file-2298.tsx
https://Sarax201--2dc95f683f9c11f0980876b3cceeab13.web.val.run
A comprehensive app to help reunite stolen vehicles with their owners.
- Report stolen vehicles with detailed information
- View reports of found cars that might match
- Contact system when someone finds their car
- Report found/suspicious vehicles with photos
- Add location, license plate, and vehicle details
- Help reunite cars with owners
- Photo upload for found vehicles
- Location tracking with maps
- Search and filter system
- Secure contact system
- Mobile-responsive design
// val: sarax201.findMyCarWebsite
export const findMyCarWebsite = `
<!DOCTYPE html>
<html>
<head>
<title>FindMyCar</title>
<style>
body { font-family: Arial; padding: 20px; background: #f8f8f8; }
h1 { color: #333; }
input, textarea { display: block; margin-bottom: 10px; width: 100%; padding: 8px; }
button { padding: 10px 20px; }
</style>
</head>
<body>
<h1>FindMyCar - Lost Car Reporting</h1>
<h2>Report Stolen Vehicle</h2>
<form id="stolenForm">
<input type="text" placeholder="Owner Name" name="ownerName" required />
<input type="text" placeholder="License Plate" name="licensePlate" required />
<input type="text" placeholder="Car Model" name="carModel" required />
<input type="text" placeholder="Last Seen Location" name="location" required />
<input type="text" placeholder="Contact Info" name="contact" required />
<button type="submit">Submit Stolen Car Report</button>
</form>
<script>
const stolenForm = document.getElementById('stolenForm');
stolenForm.addEventListener('submit', async (e) => {
e.preventDefault();
const data = Object.fromEntries(new FormData(stolenForm).entries());
const response = await fetch("https://sarax201.val.run/reportStolenCar", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(data),
});
const result = await response.json();
alert(result.message || "Report submitted!");
});
</script>
</body>
</html>
`; TypeScript types
- The app runs on
/backend/index.ts
as an HTTP val - Visit the main page to start reporting or searching for cars
- Use the map view to see locations of reported vehicles
Uses SQLite with tables for:
stolen_cars
- Reports from car ownersfound_cars
- Reports from people who found vehiclesmatches
- Potential matches between stolen and found cars