Giter Club home page Giter Club logo

savvysiddharth / project-delagram Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 3.33 MB

Delagram is a social media platform developed for IITB Community. That allows users to share memories with each other and engage in gossip.

Home Page: https://savvysiddharth.github.io/project-delagram/

License: Mozilla Public License 2.0

HTML 89.27% JavaScript 3.38% CSS 2.44% Java 4.92%
social-network social-media reactjs react jwt spring-boot css instagram iitbombay iitb

project-delagram's Introduction

Problem Statement

As part of this project, we present to you Delagram: A Photo Portal. This is a web-application where users can upload pictures (we like memory - we believe every worth picture has an emotion attached with it), that is specifically designed keeping privacy in mind. With the way the software globalisation world has been moving in the past couple of years, it is quite evident that every country wants software independence - from social media applications to vital and crucial security applications. In this direction, we have taken up the task of creating a social media portal specifically for our fellow-mates at IIT-B.

Users of this application can form communities among themselves, while we ensure their security in that they don't inadvertantly include an unknown in their circle. With all that has been going with the world, this application is meant to provide a much needed social interaction among people that are close through friendship, and yet (sadly) far by distance, while ensuring their privacy.

If you like privacy and social interaction among your close friends, Delagram is the place to be!!

List of features

The initial build of the web based application provides the following set of cool functionalities -

  1. Signup for free - with no ads disturbing you!
  2. Connect with close ones - only people who know your unique (and private) user_id. See? We weren't kidding about privacy!
  3. Upload memories and cherish them with your circle - and yes, we do support filters.
  4. View memories of friends - interact with them (comment and/or give a star! - all of us could benefit from some dopamine).
  5. Chat, or as we call it - Gossip. We don't want you to obligate you with discussions on study related stuff that you do on other chat apps (you know which ;) - it even rhymes with 'app').
  6. We don't condone customer sticking in our application the whole day - studies are important! So, unlike some other applications (strangely they have book in their name!), we don't constantly serve you "serendipitous" stuff to keep you hooked.

We hope you enjoy your visits to our application :)

Backend Architecture:

backend

Sign Up Mechanism:

delagramAuth - signup

Login Mechanism:

delagramAuth - Login

General API Call:

delagramAuth - general

Texting Mechanism:

delagramAuth - chat

Contributors

Mayank Kakad | Siddharth Maurya | Swaroop Nath

Demo Videos

Login and Signup - https://drive.google.com/file/d/1YqpZ-4dMpVolsbeuElA7gn5sFFC8CyqK/view?usp=sharing

Functionalities - https://drive.google.com/file/d/1c8seaa3CC-xFF2b7yM50zxWklZdhoUGx/view?usp=sharing

Technology Stack

The web-application uses the following technologies -

  1. ReactJS (html, css, js).
  2. Java, Maven, Spring Boot.
  3. SQLite.
  4. Firebase (authentication, data storage).

List of deliverables

100% Signup/Login functionality.

100% Image Upload with filters.

100% Feed viewing and interacting with memories - giving stars, commenting and reporting (in grave cases).

50% Privacy limits and updating profile.

100% Direct messaging with people in circle.

Hardware and Software requirements

Hardware requirements -

  1. A working computer

Software requirements -

  1. Java 11
  2. NPM
  3. NodeJS
  4. Maven
  5. Spring

How to operate

  • In order to start the frontend, do the following -

      cd Frontend
    
      npm install
    
      npm start
    
  • In order to start the server -

      cd Backend
    
      mvn spring-boot:run
    

Make sure you have the following installed -

  1. Node modules in the delagram-ui folder.
  2. mvn - for Mac users, just run brew install mvn.

Primary Stakeholders of the project

  1. IIT-B students.
  2. Team Tensors.

Team Details

The team is comprised of -

  1. Siddharth Nimeshbhai Maurya (213050033)
  2. Mayank Kakad (213050028)
  3. Swaroop Nath (21Q050014)

Work distribution -

Given the time distribution, we had two constraints that we aimed to respect -

  1. Play to each of our strong suits.
  2. Equitable work distribution.

Siddharth, with the pre-exposure to front-end technologies, was a great find for the team.

Mayank, with his previous exposure to Android app development and Firebase was another great addition.

Swaroop, with his experience in industrial web-app development and mircroservices, was a valuable addition to backend technologies.

Responsibilities for each team mate -

  1. Siddharth - Development of the full UI on React JS, while maintaining a coherence with backend APIs made available.

  2. Swaroop - Developement, as well as unit-testing, of the following microservices -

     content_upload_service
    
     content_view_service
    
     profile_search_service
    

Along with this, this particular member has coded the pipeline of verification of Firebase JWT that comes from the frontend.

  1. Mayank - Development, as well as unit-testing, of the following microservices -

     auth_service
     
     chatting_service (has been a really tricky one)
    

Along with this distribution, the members have regularly engaged in sprint calls, ensuring that we progress ahead with a working code, tested end-to-end, following the well-established web-design principles.

Path to documentation

    Backend/doc/index.html
    Frontend/docs/index.html

Screenshots:

Login

00 Login

Sign Up

01 SignUp

Memory Card

02 1 MemoryCard

Dashboard

02 dashboard

Feed

03 feed

Gossip Room

04 gossip

Creating a Memory

05 UploadMemory

Add Buddy

06 addBuddy

References:

  1. https://www.npmjs.com/package/instagram-filters
  2. https://loading.io/css/
  3. https://ionic.io/ionicons
  4. https://firebase.google.com/docs/build
  5. https://www.baeldung.com
  6. https://stackoverflow.com
  7. https://www.youtube.com/watch?v=clH7SxG-Vdc&list=PLS1QulWo1RIYMQcf1y2bqQZbpXLzpKDUL
  8. https://www.geeksforgeeks.org/mvc-design-pattern/
  9. https://www.tutorialspoint.com/spring_boot/spring_boot_sending_email.htm

project-delagram's People

Contributors

savvysiddharth avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

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.