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

https://github.com/sonickmumba/blog-app-with-rails

Blog app with Rails is a classic example of a blog website that shows the list of posts and empower readers to interact with them by adding comments and liking posts.
https://github.com/sonickmumba/blog-app-with-rails

ruby

Last synced: 2 months ago
JSON representation

Blog app with Rails is a classic example of a blog website that shows the list of posts and empower readers to interact with them by adding comments and liking posts.

Awesome Lists containing this project

README

        



# 📗 Table of Contents

- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [🚀 Live Demo](#live-demo)
- [💻 Getting Started](#getting-started)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [Deployment](#triangular_flag_on_post-deployment)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [❓ FAQ](#faq)
- [📝 License](#license)

# 📖 Blog app with Rails
![d3464a4351fdf340ccb6bb37c281381a](https://user-images.githubusercontent.com/106140591/207802604-ed8f4189-77f5-46e4-8629-ae9cd64707e7.gif)

**Blog app with Rails** is a classic example of a blog website that shows the list of posts and empower readers to interact with them by adding comments and liking posts. It follow the following data model (this is an Entity Relationship Diagram):

# ERD Diagram
![blog_app_erd](https://user-images.githubusercontent.com/106140591/207804052-d339210f-ed04-43b0-bbcc-4358ba54d1df.png)

## 🛠 Built With

### Tech Stack

Languages

Frameworks

Server

Database

Api Endpoints


  • POST /api/v1/signup

  • POST /api/v1/login

  • - GET /api/v1/users/:user_id/posts/:post_id/comments

  • - POST /api/v1/users/:user_id/posts/:post_id/comments

  • - GET /api/v1/users/:user_id/posts/:post_id/comments/:id

  • - GET /api/v1/users/:user_id/posts

  • - POST /api/v1/users/:user_id/posts

  • - GET /api/v1/users/:user_id/posts/new



  • - GET /api/v1/users/:user_id/posts/:id

  • - GET /api/v1/users

  • - POST /api/v1/users
  • - GET /api/v1/users/:id

### Key Features

- **[Keep user records]** -
- **[Add comments]**
- **[Display Comments]**
- **[Display posts]**
- **[Delete post]**
- **[Keep likes records]**
- **[Like comments]**

(back to top)

## 🚀 Live Demo

- Comming soon

(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:

> Ruby version : `ruby 3.1.2p20`
run `ruby -v`
> Database : **PostgreSQL**

```sh
gem install rails
```

### Setup

Clone this repository to your desired folder:

Example commands:

```sh
cd my-folder
git clone [email protected]:Sonickmumba/Blog-app-with-Rails.git
```
-

### Install

Install this project with:

```
cd Blog-app-with-rails
bundle install
```
-

### Usage

To run the project, execute the following command:

```sh
rails server or rails s
```
-

### Run tests

The app is tested using Rspec library you can check the tests by opening your terminal, then change the directory to the location of this repo using this command `cd file_path`, then run this command `gem install rspec`, finally run this command `rspec spec` or `rspec spec --format doc` for documented test results you should see a screen like that comming soon

### Deployment

You can deploy this project using:
- Comming soon

(back to top)

## 👥 Authors

👤 **Sonick Mumba**

- GitHub: [@Sonickmumba](https://github.com/Sonickmumba)
- Twitter: [@Sonick](https://twitter.com/MumbaSonick)
- LinkedIn: [Sonick Mumba](https://linkedin.com/in/sonickmumba)

(back to top)

## 🔭 Future Features

- [ ] **[Controllers specs]**
- [ ] **[Validation]**
- [ ] **[Views]**

(back to top)

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](../../issues/).

(back to top)

## ⭐️ Show your support

If you like this project it a thumb up : 👍 and share this projects with your friends

(back to top)

## 🙏 Acknowledgments

I would like to thank...
- Thanks to **Microverse** for giving the opportunity to learn
- Code reviewers and coding partners
- Hat tip to anyone whose code was used
- Inspiration

(back to top)

## ❓ FAQ

> Add at least 2 questions new developers would ask when they decide to use your project.

- **[Question_1]**

- [Answer_1]

- **[Question_2]**

- [Answer_2]

(back to top)

## 📝 License

This project is [MIT](./LICENSE) licensed.

_NOTE: we recommend using the [MIT license](https://choosealicense.com/licenses/mit/) - you can set it up quickly by [using templates available on GitHub](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository). You can also use [any other license](https://choosealicense.com/licenses/) if you wish._

(back to top)