Skip to content

This is the back-end project for the 'Book An Appointment' web app. It is developed for the Final Capstone Project of the Microverse Full-Stack Developer program. This project is developed using Ruby on Rails for an API, using PostgreSQL as the database.

License

Notifications You must be signed in to change notification settings

jcmunav63/book-an-appointment-back-end-mv-final-capstone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Book An Appointment Web App - Final Capstone Project

main-logo

Book An Appointment Web App - Ruby on Rails back-end - Final Capstone Project

πŸ“— Table of Contents

πŸ“– About project - Book An Appointment Web App - Ruby on Rails Back-End

The Book An Appointment Web App is a responsive web application developed with Ruby on Rails & React. It represents the Final Capstone Project of the Microverse Full-Stack Developer program. This project represents the back-end part of the complete project, developed with Ruby on Rails. The front-end part is developed in another repository, using React.js and Redux.

Back-end application name: book-an-appointment-back-end-mv-final-capstone link: https://github.com/jcmunav63/book-an-appointment-back-end-mv-final-capstone.git

Front-end application name: book-an-appointment-front-end-mv-final-capstone link: https://github.com/jcmunav63/book-an-appointment-front-end-mv-final-capstone.git

πŸ“– KANBAN BOARD - Book An Appointment Web App - Ruby on Rails Back-End

πŸ›  Built With

Tech Stack

Key Features

  • Set up a Ruby on Rails project together with React.js as the front-end.
  • Set up linters using Stylelint and Rubocop
  • Connect the Rails project to a PostgreSQL database.
  • Set up a User model, a controller, and the corresponding database table.
  • Configure an API endpoint to request the users data from the front-end application.
  • Implement all API endpoints to request data about: Users, Coworking Spaces, Reservations, Cities, States.

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

Install Ruby

Set Up Rails

Prerequisites: Ruby, Ruby Development Kit (for Windows), Ruby Gems packaging system, and PostgreSQL database server. Run the following commands...

$ gem install rails

Setup

  cd my-folder
  git clone https://github.com/jcmunav63/book-an-appointment-back-end-mv-final-capstone.git

Install

This project requires the following dependencies: the Ruby interpreter, the Gem package manager, the Ruby on Rails web framework, a PostgreSQL database server, the Webpack JS module bundler, the jsbundling-rails gem, and two linters checkers: RuboCop (Ruby) and Stylelint (CSS styles).

bundle install

a

Database

sudo service postgresql start

Create database:

rails db:create

Run migrations:

rails db:migrate

Add the seeds:

rails db:seed

Usage

To run the project, navigate to the project directory and execute the following command:

Start the Ruby on Rails web server (Puma server) typing the following command...

  rails s , or the complete command,
  rails server

Run tests

To execute all test suites in the application, use the following command in your terminal:

rspec

Check linters

  • Install the Rubocop and Stylelint linters.

Install the Rubocop linters checker using the following steps...

  • First add the following code to the Gem file:
gem 'rubocop', '>= 1.0', '< 2.0'
  • Second run the command to install dependicies in your project:
bundle install
  • Remember to copy the .rubocop.yml file to your root directory.

gem 'rubocop', '>= 1.0', '< 2.0'

  • Copy the linters.yml file inside of path .github/workflows

To run LINTERS, run the following command:

Run the following command for Ruby code...

rubocop
  • Unit, request, and integration tests will be developed on another stage.

(back to top)

πŸ‘₯ Authors

πŸ‘€ Juan Carlos MuΓ±oz

πŸ‘€ Kazim Mohammadi

πŸ‘€ Julio Alejandro Quezada

(back to top)

πŸ”­ Future Features

  • *** Implement other functionalities, like authorization.**

(back to top)

🀝 Contributing

Contributions, issues, and feature requests are welcome!

(back to top)

⭐️ Show your support

If you like this project please give me a star on Github. Thanks in advance.

(back to top)

πŸ™ Acknowledgments

  • We would like to acknowledge that our application is based on Murat Korkmaz application design called "Vespa - Responsive Redesign", which is open for use under the Creative Commons license. You can find this design on Behance. We are very grateful to Murat Korkmaz for his excellent contribution.

  • We would like to thank our colleagues, who inspire us to do our best everyday.

(back to top)

❓ FAQ

Did you create this project from scratch?

  • It is a complete Ruby on Rails project on the backend with connection to React.js and Redux.js on the frontend. It uses two repos, this one for the back-end and another one for the front-end.

(back to top)

πŸ“ License

This project is MIT licensed.

(back to top)

About

This is the back-end project for the 'Book An Appointment' web app. It is developed for the Final Capstone Project of the Microverse Full-Stack Developer program. This project is developed using Ruby on Rails for an API, using PostgreSQL as the database.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •