Coder Social home page Coder Social logo

renfy-social-media / renfy Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 1.0 3.67 MB

Renfy is a proximity-based social media app designed to turn everyday encounters into opportunities for meaningful connections. By alerting users to nearby individuals they frequently cross paths with, Renfy fosters real-world interactions and friendships.

Home Page: https://renfy.vercel.app

License: Apache License 2.0

Python 4.07% JavaScript 86.32% Ruby 3.32% Objective-C 0.34% Objective-C++ 2.81% C 0.11% Swift 0.12% HTML 0.40% TypeScript 2.29% CSS 0.24%
community-building privacy-first social-media technology proximity-connections real-world-interactions

renfy's Introduction

Renfy Banner

Renfy

Connect with people you pass by daily!

Renfy leverages proximity technology to turn daily encounters into opportunities for connection. By notifying users when they frequently cross paths with someone, Renfy aims to foster real-world interactions and build community.


Table of Contents


Introduction

Renfy is a social connectivity app designed to help users discover potential connections based on real-life encounters. Using Bluetooth, location data, WiFi, and device history, Renfy identifies when users cross paths frequently and suggests connections. It's about enhancing the quality of our social lives by leveraging the unnoticed opportunities for interaction that our daily routines offer.

Features

  • Proximity-based Notifications: Alerts users when they have crossed paths with someone else frequently.
  • Privacy-first Design: Comprehensive privacy settings allow users to control what information they share.
  • Real-world Connections: Focuses on building genuine relationships from real-life encounters.
  • Customizable User Preferences: Users can set their preferences for notifications and connections.

Technology Stack

  • Frontend: React Native, for cross-platform mobile development.
  • Backend: Python and MongoDB for the database.
  • Proximity Technology: Utilizes Bluetooth LE for near-field communications and GPS for location tracking.

Getting Started

Prerequisites

  • Node.js
  • npm or yarn
  • MongoDB
  • React Native development environment

Installation

  1. Clone the repository:

    git clone https://github.com/Renfy-Social-Media/Renfy.git
  2. Install NPM packages for both server and client:

    # For the server
    cd renfy/server
    npm install
    
    # For the client
    cd renfy/client
    npm install
  3. Set up your environment variables in a .env file based on the example provided in .env.example.

  4. Start the server:

    npm start
  5. Run the app on your device or emulator:

    npm run android # For Android
    npm run ios # For iOS

How to Use

After installation, open Renfy on your device. The app will request permission to use your location and Bluetooth. Once permissions are granted, Renfy starts tracking your encounters. When a frequent crossing pattern is identified, you'll receive a notification with the option to connect with the other user.

Backend

The backend is a MongoDB NoSQL database with the following JSON schema. The "Crossings" element is central to tracking information about crossings with other individuals. The most critical operations in the backend serve to initialize new users, add crossings with other individuals, and serve to update basic information. The "User" field serves as a unique identifier and can't be modified.

{
"Real_Name":
"User_Name":
"Password":
"Email":
"Crossings":{   
  Connection: { 
      "count":
      "locations":
      "time":
  } #multiple connections allowed
"Connection_Requests":{}, 
"Accepted_Connections":{} 
}

Contributing

We welcome contributions to Renfy! If you'd like to contribute, please fork the repository and create a pull request with your features or fixes. For major changes, please open an issue first to discuss what you would like to change.

License

Renfy is released under the MIT License. See the LICENSE file for more information.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.