https://github.com/elenikotsiri/prime-properties
Property listings website using Next.js
https://github.com/elenikotsiri/prime-properties
cloudinary javascript maptiler mongodb next-auth nextjs reactjs tailwindcss vercel webapp
Last synced: 2 months ago
JSON representation
Property listings website using Next.js
- Host: GitHub
- URL: https://github.com/elenikotsiri/prime-properties
- Owner: EleniKotsiri
- Created: 2025-01-22T08:02:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-07-02T14:30:36.000Z (12 months ago)
- Last Synced: 2025-09-10T02:33:59.081Z (10 months ago)
- Topics: cloudinary, javascript, maptiler, mongodb, next-auth, nextjs, reactjs, tailwindcss, vercel, webapp
- Language: JavaScript
- Homepage: https://prime-properties-beryl.vercel.app
- Size: 4.94 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🏡 Prime Properties
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
A modern property listing platform built with Next.js, MongoDB, and Tailwind CSS. Users can browse, list, and inquire about properties seamlessly.
## Live Demo
[🔗 View the site on Vercel](https://prime-properties-beryl.vercel.app/)
## Tech Stack
- **Frontend:** Next.js, React, Tailwind CSS
- **Backend:** Next.js Server Actions, MongoDB
- **Authentication:** NextAuth.js (Google OAuth)
- **Image Hosting:** Cloudinary
- **Maps Integration:** MapTiler
- **Deployment:** Vercel
## Installation & Setup
1. Clone the repository:
```sh
git clone https://github.com/EleniKotsiri/prime-properties.git
cd prime-properties
```
2. Install dependencies:
```sh
npm install
```
3. Set up environment variables:
Create a `.env` file and add the necessary API keys and credentials:
```sh
# Database
MONGODB_URI=your-mongodb-connection-string
# App Domains
NEXT_PUBLIC_DOMAIN=your-public-domain
NEXT_PUBLIC_API_DOMAIN=your-api-domain
# Google OAuth Setup
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
# NextAuth Configuration
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_URL_INTERNAL=http://localhost:3000
NEXTAUTH_SECRET=your-nextauth-secret
# Cloudinary (Image Upload)
CLOUDINARY_CLOUD_NAME=your-cloudinary-cloud-name
CLOUDINARY_API_KEY=your-cloudinary-api-key
CLOUDINARY_API_SECRET=your-cloudinary-api-secret
# MapTiler (Maps Integration)
NEXT_PUBLIC_MAPTILER_API_KEY=your-maptiler-api-key
```
4. Run the development server:
```sh
npm run dev
```
The app will be available at http://localhost:3000.
## Features
- List and browse properties
- Contact property owners directly
- User authentication via Google OAuth (NextAuth.js)
- Upload and manage images using Cloudinary
- Map integration with MapTiler
- Messaging system for inquiries
- Responsive and mobile-friendly design
## Deployment
The app is deployed on Vercel. To deploy your own version:
1. Push your code to a GitHub repository.
2. Connect the repository to Vercel.
3. Set environment variables in Vercel.
4. Deploy
📌 Contributing
Contributions are welcome! Feel free to fork the repo, open an issue, or submit a pull request.