An open API service indexing awesome lists of open source software.

https://github.com/mlh-fellowship/sociomark

A social media platform that lets you upload images and secures them by embedding a personalised hash.
https://github.com/mlh-fellowship/sociomark

fastapi hacktoberfest mongodb-atlas opencv python reactjs steganography tailwindcss

Last synced: 4 months ago
JSON representation

A social media platform that lets you upload images and secures them by embedding a personalised hash.

Awesome Lists containing this project

README

        

# SocioMark
A social-media platform that lets you upload images and secure them with a personalized encryption. Your assets will always be yours, regardless of who posts it!

[![Netlify Status](https://api.netlify.com/api/v1/badges/e16b536d-64db-41c7-86dd-c29f1c48bc98/deploy-status)](https://app.netlify.com/sites/sociomark/deploys)
![Heroku](http://heroku-badge.herokuapp.com/?app=sociomark-backend&style=flat&svg=1)
![GitHub closed issues](https://img.shields.io/github/issues-closed/Open-Sourced-Olaf/SocioMark?style=flat)
![GitHub closed pull requests](https://img.shields.io/github/issues-pr-closed/Open-Sourced-Olaf/SocioMark?color=green?style=flat)

## 👨‍💻 What it does
- SocioMark is essentially a social media platform that lets users create an account to upload and share images. Every image upload is added to the user's profile and can be shared with other users.
- After uploading the image, the user's unique hash created from their profile is encoded within the image. Users can `verify` an image's `copyright` and see if it matches with the user who uploaded the image. If the verification fails, users can flag an image to take down, protecting the original creator's copyright.

## 📱 Progressive WebApp
SocioMark is now a Progressive WebApp for better accessibility and user experience. It allows users to install the app directly from the web to their desktops/home screens and provides the native app-like experience.

Being a fully responsive and compatible application, it provides users with the same experience across tablets, mobile devices, and desktops!


Light
       
Dark

## ⚛ Tech Stack
- Frontend : ReactJS (JavaScript), Tailwind CSS
- Backend : FastAPI (Python3)
- Database : MongoDB
- Image Processing : OpenCV (Python3)

## 💻 Run the project locally
- Clone the repo ```https://github.com/MLH-Fellowship/SocioMark.git```
- Navigate to ```SocioMark/backend```
- Run command to install all the Python (Server) dependencies ```pip install -r requirements.txt```
- Navigate to ```http://localhost:8000/docs``` to view the Swagger API end-points
- Navigate to ```SocioMark/frontend```
- Run command to install all the JavaScript (Client) dependencies ```npm install```
- Run command ```npm start```
- Navigate to ```http://localhost:3000/```

## 🚩 How to Contribute
- You can check out the [CONTRIBUTING.md](https://github.com/MLH-Fellowship/SocioMark/blob/main/CONTRIBUTING.md) file in the repo 😄.

## 🤓 Future Improvements
- Follower functionality that improves interaction between users and lets users customize their feed pages
- Implement pagination for feed
- Sharing functionality to share images outside of platform

## 🤔 Challenges
- One of the main challenges we ran into with this project is incorporating the numerous functions required of a social media platform.
- From login and registering authentication to implementing like and comment functionality for posts and even building user profiles, there are many parts to creating a viable social media app, and it took a lot of work to implement everything.
- Additionally, building the encoder required a lot of research and trial and error. Finally, integrating the frontend and the backend of the platform and debugging the full functionality proved to be a challenge as well.

## ✨ Credits
- [Aitik Gupta](https://github.com/aitikgupta)
- [Bodhisha Thomas](https://github.com/bodhisha)
- [Deepak Agrawal](https://github.com/DebugAgrawal)
- [Sumi Kolli](https://github.com/sgkolli535)