/blog_app

A fully functional website that will show the list of posts and empower readers to interact with them by adding comments and liking posts.

Primary LanguageRubyMIT LicenseMIT

📗 Table of Contents

📰 Blog App

A fully functional website that will show the list of posts and empower readers to interact with them by adding comments and liking posts.

🛠 Built With

Tech Stack

Key Features

  • ORM model
  • User, Comment, Post, and like model
  • Custom methods in each classes
  • Add validation for user and post
  • Test cases for each model
  • Add views, controllers, and routes for each model
  • Test cases for each controller
  • Add views for user and posts
  • Add forms for posts, comments, and likes
  • Add integtation test and fix n+1 problems
  • Add authentication using devise gem
  • Add authorization using cancancan gem
  • Add API endpoint

(back to top)

💻 Getting Started

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

Prerequisites

In order to run this project you need:

  • Command line or terminal
  • IDE such as VsCode.
  • Rails needs to be installed on your system.

Setup

Clone this repository to your desired folder: Example command:

  git clone https://github.com/zewdu444/blog_app.git
  cd blog_app

Install

Example command:

  cd blog_app
  bundle install (install all dependencies)

Usage

To run the project redirecting to the root directory of the project and run the following command:

 bin/rails server (to run web application)

Test

To test the web app run the following command:

 rspec spec ( to test the web application)

👥 Authors

👤 Zewdu Erkyhun

👤 Marko Kermichiev

(back to top)

🔭 Future Features

  • [add API documentation]

(back to top)

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

⭐️ Show your support

Give a ⭐️ if you like this project!

(back to top)

🙏 Acknowledgments

we would like to thank microverse community for the support and guidance.

(back to top)

📝 License

This project is MIT licensed.

(back to top)