/book-tesla

An app to book an appointment to try a Tesla vehicle with React and Rails

Primary LanguageRubyMIT LicenseMIT

Book-Tesla

API built with Rails where your users can create bookings for a given car:

About

Book-a-Tesla is a Rails only API project where your users can create bookings for a given car. With the endpoints, developers can integrate the front-end of their web-app to create users, cars and bookings.

Front-end of Book-a-Tesla can be found here.

Description

Rent a Tesla API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

With this API, developers can interact with the database to create, edit or delete users, cars, and bookings.

Check complete documentation with

rails s

And then, open the API docs in the local server.

Built With

  • Ruby
  • Rails
  • Rswag
  • Rspec
  • VS Code

Getting Started

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

Prerequisites

  • Having a modern internet browser: I.E. Chrome, Edge, Safari, Firefox.
  • Being able to run a local server and rails commands
  • Bundle

Setup

Install

  • Open your console and change the current working directory into the destination for this project.
  • Type git clone, and then paste the URL copied in the Setup section.
  • Type Enter and then enter cd book-tesla to enter into the project directory.
  • Run bundler install to install the required dependencies

Run

rails db:create # create database
rails db:migrate # migrate tables
rails db:seed # load dummy database from seed.rb

rails s # run the api

By default, the project will run in the port 8000.

Testing

  • Run rspec spec to run the tests for this project

Project

Authors

👤 Luis Fernando Jimenez

👤 Juan Paulo Pérez-Tejada

👤 Mohammad Mouaz Molki

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Open an issue here.

Show your support

Give a ⭐️ if you like this project!

Acknowledgments

  • Microverse for the guidelines used for this project
  • Original design idea for the front-end by Murat Korkmaz on Behance.
  • My SO and project manager, Mane

📝 License

This project is MIT licensed.