SegundoRP / rails_vue

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

README

This repository is an API to get earthquakes of the last 30 days. Therefore there is an interface to check earthquake's features and add a comment about every earthquake that you want.

Tech Stack

  • Earthquake API
  • Ruby 3.1.2
  • Ruby on Rails 7.1.3
  • Vue js 3
  • Vuex 4
  • Bootstrap 5.3.3
  • Vite 5.2
  • Vue awesome paginate 1.1.46
  • Postgresql 12
  • Gems:
    • rack-cors
    • json
    • http
    • jsonapi-serializer
    • will_paginate

Endpoints

Get all earthquakes

  GET /api/features

Get earthquakes with page, per page and filter settings

  GET /api/features?page={page}&per_page={per_page}&mag_type[]={mag_type}
Parameter Type Description
page integer Required - number of page
per_page integer Required - records per page
mag_type array(string) Required - filter by mag_type, options: md, ml, ms, mw, me, mi, mb, mlg

Post a comment per earthquake

  POST /api/features/:feature_id/comments
Parameter Type Description
body text Required - content of comment for specific feature(earthquake)
feature_id integer Required - id of the feature(earthquake)

Setup

  1. Clone repo and change to directory repo
git clone git@github.com:SegundoRP/rails_vue.git && cd $_
  1. Install backend dependencies
bundle i
  1. Create db and run migrations
rails db:create db:migrate
  1. Install frontend dependencies
cd client && npm i
  1. Run task to get earthquakes into db
rake earthquakes:get_earthquakes
  1. Run backend server
rails s
  1. Run frontend server
cd client && npm run dev

About


Languages

Language:Ruby 69.7%Language:Vue 18.6%Language:Dockerfile 4.3%Language:CSS 3.2%Language:JavaScript 2.3%Language:HTML 1.5%Language:Shell 0.5%