Public
Like
untitled-5794
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in miliseconds.
https://Mac4--6e16acec3fb511f09d8776b3cceeab13.web.val.run
A comprehensive apartment search application that helps users find and save their ideal rental properties.
- User Authentication: Secure login and registration system
- Location-based Search: Search apartments by city, state, or zip code
- Advanced Filters: Filter by price, bedrooms, bathrooms, and amenities
- Detailed Listings: View photos, descriptions, pricing, and amenities
- Interactive Map: See apartment locations on an integrated map
- Favorites System: Save and manage favorite apartment listings
- Responsive Design: Mobile-first design that works on all devices
├── backend/
│ ├── database/
│ │ ├── migrations.ts # Database schema setup
│ │ └── queries.ts # Database query functions
│ ├── routes/
│ │ ├── auth.ts # Authentication endpoints
│ │ ├── apartments.ts # Apartment CRUD operations
│ │ ├── users.ts # User management
│ │ └── static.ts # Static file serving
│ └── index.ts # Main API entry point
├── frontend/
│ ├── components/
│ │ ├── App.tsx # Main application component
│ │ ├── Auth/ # Authentication components
│ │ ├── Search/ # Search and filter components
│ │ ├── Listings/ # Apartment listing components
│ │ └── Map/ # Map integration components
│ ├── index.html # Main HTML template
│ ├── index.tsx # Frontend entry point
│ └── style.css # Application styles
└── shared/
├── types.ts # Shared TypeScript interfaces
└── utils.ts # Shared utility functions
- Backend: Hono.js (lightweight web framework)
- Database: SQLite (Val Town hosted)
- Frontend: React with TypeScript
- Styling: TailwindCSS
- Maps: Integrated mapping service
- Authentication: JWT-based auth system
- The backend API is accessible at the root URL
- All frontend assets are served from
/frontend/
- The app includes sample apartment data for testing
- User authentication is required for saving favorites
POST /api/auth/register
- User registrationPOST /api/auth/login
- User loginGET /api/apartments/search
- Search apartmentsGET /api/apartments/:id
- Get apartment detailsPOST /api/users/favorites
- Add/remove favoritesGET /api/users/favorites
- Get user favorites
No external API keys required - the app uses mock data and built-in services.