Skip to content

kaanklcrsln/friendly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Friendly

A GIS-based social platform with event discovery, real-time chat, and map integration—powered by Firebase Realtime Database

friendly-banner

Project Structure

├── client/          # React + Vite frontend
│   └── src/
│       ├── api/           # Firebase client & API helpers
│       ├── assets/        # Images, global styles
│       ├── components/    # Reusable UI (common, layout, map, chat, events)
│       ├── context/       # React Context providers (Auth, Event, Map)
│       ├── hooks/         # Custom hooks (useAuth, useGeolocation, useRealtimeChat, useEvents)
│       ├── pages/         # Route-level page components
│       └── router/        # React Router configuration
└── server/          # Node.js + Express backend
    └── src/
        ├── config/        # Firebase Admin SDK & env config
        ├── controllers/   # HTTP request handlers
        ├── middleware/    # Auth verification, error handling
        ├── routes/        # API route definitions
        ├── services/      # Business logic & Firestore queries
        └── utils/         # Helper functions

Getting Start

Prerequisites

  • Node.js 18+
  • pnpm (recommended) or npm/yarn
  • A Firebase project with Realtime Database enabled:
    • Database URL: https://friendly-2fb02-default-rtdb.europe-west1.firebasedatabase.app
    • Firebase Authentication enabled

Install Dependencies

pnpm install          # installs workspaces for client & server

Environment Variables

client/.env (Opsiyonel - Firebase credentials zaten entegre edildi)

# Aşağıdaki değerler zaten src/api/firebase.js'de tanımlanmıştır
VITE_FIREBASE_API_KEY=your_firebase_api_key_here
VITE_FIREBASE_AUTH_DOMAIN=friendly-2fb02.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=friendly-2fb02

server/.env

PORT=4000
FIREBASE_SERVICE_ACCOUNT_KEY=<service-account-json>

server/.env

PORT=4000
FIREBASE_SERVICE_ACCOUNT_KEY=<JSON string of your service account>

Run Development Servers

# Terminal 1 – client
cd client && pnpm dev

# Terminal 2 – server
cd server && pnpm dev

The client runs at http://localhost:5173 and the server at http://localhost:4000.

License

MIT

About

A GIS-based social platform with event discovery, real-time chat, and map integration powered by Firebase Realtime Database.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors