8000 GitHub - MehranRastgar/whisiper
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

MehranRastgar/whisiper

Repository files navigation

Whisiper - Location-Based Social Network

Overview

Whisiper is a modern location-based social networking application that allows users to share and discover content based on their geographic location. Built with Next.js and .NET, it offers a unique way to connect with people and content in your vicinity.

Features

  • 📍 Location-based content discovery
  • 🗺️ Interactive map integration with MapLibre GL
  • 📱 Responsive design
  • ♾️ Infinite scroll functionality
  • 🖼️ Image upload and cropping
  • 👍 Like/Dislike system
  • 🔐 User authentication
  • 📄 Post creation and management

Tech Stack

Frontend

  • Next.js 13+
  • React
  • TypeScript
  • TanStack Query (React Query)
  • Tailwind CSS
  • MapLibre GL
  • Axios

Backend

  • .NET 8
  • SQL Server
  • Entity Framework Core
  • Domain-Driven Design

Getting Started

Prerequisites

  • Node.js 18+
  • npm or yarn
  • .NET 8 SDK
  • SQL Server

Installation

  1. Clone the repository
git clone https://github.com/yourusername/whisiper.git
cd whisiper
  1. Install frontend dependencies
npm install
# or
yarn install
  1. Configure environment variables Create a .env file in the root directory and add:
NEXT_PUBLIC_API="https://api2.bugtech.ir"
NEXT_PUBLIC_API_AUTH="https://auth.bugtech.ir"
  1. Start the development server
npm run dev
# or
yarn dev

Project Structure

whisiper/
├── src/
│   ├── components/
│   │   ├── posts/
│   │   ├── Profile/
│   │   └── utils/
│   ├── store/
│   ├── types/
│   └── pages/
├── public/
└── styles/

Key Components

  • FeedFetcher: Handles post fetching and infinite scroll
  • PostInfo: Displays post metadata and interactions
  • ProfileHeader: Manages user profile and image upload
  • MapComponent: Handles map visualization and location markers

Features in Detail

Location-Based Content

  • Posts are fetched based on user's current location
  • Distance calculation between user and posts
  • Interactive map showing post locations

Image Handling

  • Image upload with preview
  • Image cropping functionality
  • Optimized image loading

Authentication

  • Token-based authentication
  • Secure API requests
  • Protected routes

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details

Contact

Your Name - @MehranRastgar Project Link: https://github.com/yourusername/whisiper

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages

0