Skip to content

Latest commit

 

History

History
48 lines (25 loc) · 2.87 KB

README.md

File metadata and controls

48 lines (25 loc) · 2.87 KB

Camagru

image

Description

The aim of Camagru project was to write a fully functional image sharing social media platform without any use of third party frameworks. The backend had to be done completely with PHP with the usage of MySQL database. For styling I ended up writing my own bootstrap -like CSS framework to help me with quick styling of components and easy adjusting later. For UI I took some inspiration from the works of Joanna Mehtälä

I tried to make the project as secure as I know and XSS and SQL-injction attacks should be if not impossible, at least pretty hard to pull off.

During development I learned a whole lot about project architeture, security, SQL, PHP and it is the first BIG project I've built completely from ground up.

Usage

In Camagru you can create a user and start uploading pictures either through webcam or upload files from your device and add stickers to the images. After you have uploaded your picture for everyone to see, other people can like it or comment on it and you will get notified by comments and likes by email. You can see the pictures of other people even if you don't have a user but you will be unable to like or comment posts.

Your profile will be authenticated by emailing you a link containing unique activation token.

How to Install and Run the Project

Easiest way to run the application is running it with MAMP/XAMP.

Then in your apache2/htdocs directory run git clone git@github.com:JuhoKangas/42_camagru.git camagru. The project has to be cloned to directory called camagru for it to work correctly.

After cloning the project go to localhost:8080/camagru/index.php to create the database.

You might need to change the $DB_PASS in camagru/config/database.php and /camagru/src/functions.php to the password you have set for your backend.

Previews

Login screen

Screen Shot 2022-10-12 at 2 50 47 PM

Upload file view

image

Mobile view of the feed

image

Desktop view of the feed

image

View of the feed when user is not logged in

image