Skip to content

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

License

Notifications You must be signed in to change notification settings

MLH-Fellowship/SocioMark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 Heroku GitHub closed issues GitHub closed pull requests

👨‍💻 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

🤓 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