Thanks to visit codestin.com
Credit goes to github.com

Skip to content

igamus/sonic

Repository files navigation

Sonic - Discord but Faster

Sonic Live Site here!

Table of Contents

Index

Feature List | Database Scheme | API/Routes |

Introduction

Sonic is a fast and dynamic communication platform inspired by Discord. It allows users to create servers and group channels to hang out with friends and explore various hobbies and areas of interest. Built using React, Websockets, and Flask, Sonic offers a real-time chatting experience that ensures seamless communication and efficient interactions.

Getting started

  1. Clone this repository: https://github.com/igamus/sonic.git

  2. Install denpendencies into the Backed and the Frontend by making a terminal for each one and then run the following:

    • backend (In base of directory):
      • Pipenv install
    • frontend :
      • npm install
  3. Create a .env file using the .envexample provided

  4. Set up your database with information from your .env and then run the following to create your database, migrate, and seed (base directory):

    • Pipenv shell
    • flask db init
    • flask db migrate
    • flask db upgrade
    • flask seed all
  5. Start the app for both backend and frontend using:

    • backend :
      • pipenv run flask run
    • frontend :
      • npm start

Amazon Web Services S3

  • For setting up your AWS refer to this guide

Landing Page

landing-page-gif

Servers Page

server-page-gif

Features

  • Server Creation: Users can create their own servers and invite friends to join, fostering a sense of community within specific interest groups.

  • Group Channels: Within each server, users can create and participate in different group channels, making it easy to chat and share content with like-minded individuals.

  • Real-time Communication: Sonic leverages Websockets to enable real-time messaging, ensuring instant delivery of messages and a smoother user experience.

  • User Authentication: Secure user authentication allows individuals to create accounts, log in, and access their servers with confidence.

  • Sleek and Intuitive UI: The user interface is designed to be user-friendly and visually appealing, enhancing the overall user experience.

  • User Profile Pictures: Users can personalize their profiles with profile pictures, adding a personal touch to their presence on Sonic.

  • Server and Banner Images: Servers can have custom server images and banners, allowing users to customize the look and feel of their communities.

Technologies Used

  • React: A popular JavaScript library for building user interfaces.
  • Websockets: A communication protocol that enables real-time, full-duplex communication between the client and server.
  • Flask: A lightweight and efficient web framework for Python.

Python JavaScript React Redux Flask Postgres

Usage

  1. User Registration/Login: Create an account or log in to an existing account to access the full functionality of Sonic.

  2. Server Creation: Once logged in, you can create your own server and invite friends to join by sharing the server link/code.

  3. Group Channels: Within each server, you can create multiple group channels for different discussions or topics.

  4. Real-time Chat: Enjoy real-time communication with friends and community members in the group channels.

  5. Personalization: Customize your user profile with a profile picture and your servers with unique server images and banners.

  6. Exploring Interests: Discover and join servers related to various hobbies and areas of interest to connect with like-minded individuals.

Contributors

About

Like Discord but faster. React, Flask, SQLAlchemy.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages