elmejdki / BookClone

BookClone is another social media website, but this one is for the public. People can share their pictures, write about stuff, and comment on other user's posts and also chat with other persons. this was built using Ruby on Rails, Vanilla JavaScript, and SCSS.

Home Page:https://book-clone.herokuapp.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BookClone

This project was born as a result of 2 weeks of dedicated hard work, between me @Zakariae, and my partner @Franco, after finishing the Rails curriculum on Microverse we decided to build a Facebook replicate in order to understand more the structure of Ruby on Rails, but we were serious about building something beautiful like this, please feel free guys exploring the app and if you have some new feature that you want to propose don't hesitate to open an issue on this repository with the specified details.

Home Page

image

Entity Relation Diagram

  • Here is the Entity Relation Diagram that we have used in this project

image

Features

  • User can log in using an email and password;
  • User can sign up, entering his personal information;
  • User can access his profile;
  • User can access all users profile;
  • User can add a friend;
  • User can cancel a friend request;
  • User can accept or decline a friend request;
  • User can share a post, delete and edit his own posts;
  • User can like, dislike and leave a comment on a post;
  • User can send messages to other users;
  • User can receive messages from a user;
  • User can change his avatar;
  • User can change his cover picture;
  • User can update his personal information;

Built With

  • Ruby v2.6.5,
  • Ruby on Rails v6.0.3.2,
  • Action Cable
  • AWS S3 services

Live Demo

heroku image

Getting Started

This is an example of how you may give instructions on setting up your project locally.

To get a local copy up and running follow these simple example steps.

Prerequisites

  • Ruby: v2.6.5p114
  • Ruby on Rails v6.0.3.2
  • Postgres: >= 9.5
  • AWS credentials

Setup

  • Install gems with:
  bundle install
  • Setup database with:
  rails db:create
  rails db:migrate

IMPORTANT

I used the S3 AWS service in order to store images. Therefore, I used SECRET KEYS stored in environment variables on my development and production servers.

  • So if you have AWS credentials create a new file named application.yml inside config/ directory and then past your credentials in it like showing bellow:
  development:
    access_key_id: your_access_key_id_goes_here
    secret_access_key: your_secrect_access_key_goes_here

Usage

Start server with:

  rails s

Then open http://localhost:3000/ in your browser

Future Features

  • Make the search field working so we can allow users to search for each other

    Add pagination to the list of posts and friends also

    Add, birthday to the user model, to cheer if someone birthday comes soon or whatever

    Add some javascript validation for the signup page

    Show a notification if someone liked my post or commented on it.

Authors

👤 Zakariae El Mejdki

👤 Franco Rosa

🤝 Contributing

Contributions, issues and feature requests are welcome!

Feel free to check the issues page.

Show your support

Give a ⭐️ if you like this project!

About

BookClone is another social media website, but this one is for the public. People can share their pictures, write about stuff, and comment on other user's posts and also chat with other persons. this was built using Ruby on Rails, Vanilla JavaScript, and SCSS.

https://book-clone.herokuapp.com/


Languages

Language:Ruby 40.7%Language:HTML 31.8%Language:SCSS 19.1%Language:JavaScript 8.4%