## Inspiration

Khoj was inspired by a friend who came to Kathmandu Valley for education and struggled to find a room or flat in time. He had to rely on a broker who could not guarantee a room but still charged a fee.

That experience motivated me to build a free, direct platform where room seekers can contact posters without paying brokerage fees or creating an account.

## What it does

Khoj is an accountless room-discovery platform designed for Kathmandu Valley.

Users can:

- Browse available rooms and flats
- Search by city, area, rent, property type, facilities, and freshness
- View room photos in a full-screen gallery
- Contact posters directly
- Publish listings without creating an account
- Verify control of their phone number through OTP
- Manage listings through private links or My Listings
- Edit, renew, mark as rented, rotate, or delete listings
- Report misleading or abusive listings
- Use the interface in English or Nepali

Administrators can review reports, moderate listings, block harmful contacts, and inspect audit logs.

## How we built it

Khoj was built with Next.js, React, TypeScript, responsive CSS, and Next.js Route Handlers. Zod is used for validation and server-side input protection.

Listing data is stored in Neon PostgreSQL using Drizzle ORM. Images are uploaded through Vercel Blob and validated with Sharp. Vitest and Playwright are used for testing, and the application is deployed on Vercel.

I used Codex with GPT-5.6 as a development collaborator for planning, architecture, security decisions, implementation, debugging, UI improvements, database setup, deployment, README preparation, and creating the demo video.

## Challenges we ran into

One challenge was designing phone verification without access to an SMS provider. For the hackathon demo, Khoj uses a clearly labeled demo verification mode while keeping the OTP flow structured so a real SMS provider can be connected later.

Other challenges included:

- Designing a simple accountless listing-management system
- Protecting public listing and admin endpoints
- Handling image validation, previews, removal, and full-screen viewing
- Connecting Neon PostgreSQL and Vercel Blob during deployment
- Creating a responsive interface for both desktop and mobile
- Building moderation and reporting workflows
- Keeping contact information private until a visitor deliberately reveals it

## Accomplishments that we're proud of

We are proud that Khoj provides a complete room-discovery workflow without requiring normal users to create accounts or pay the platform.

The project includes phone-control verification, private listing management, community reporting, administrator moderation, audit logging, multilingual support, responsive layouts, photo galleries, and direct contact between room seekers and posters.

We are also proud that the project is live on Vercel and that Codex helped me create a polished demo video for the project.

## What we learned

I learned how to plan and build a full-stack application, design database-backed workflows, validate user input, protect API endpoints, handle image uploads, deploy with Vercel, connect Neon PostgreSQL, and configure production environment variables.

I also learned that security is not only about authentication. Privacy controls, rate limits, verification, moderation, reporting, audit logs, and clear user guidance are all important parts of building a trustworthy product.

## What's next for Khoj (Find It)

After the hackathon, I would like to:

- Connect a real SMS provider for phone verification
- Add stronger CAPTCHA and automated abuse prevention
- Add optional email-based listing recovery
- Improve moderation analytics and administrator tools
- Expand Khoj to more cities across Nepal
- Add better listing freshness and availability reminders
- Improve accessibility and Nepali localization

Built With

Share this project:

Updates