final-capstone-project-back-end

@Doc is an application that'll allow users to register and create medical appointments or if they desire they can also reserve doctors. There are options so that users can add or delete a doctor. In a doctor's details page information relevant to appointments and reservations will be displayed.

MIT License

Stars
4
Committers
1

📗 Table of Contents

📖 Final Capstone Back End

final_capstone_back_end The back-end component of this final capstone project is developed using Ruby on Rails, configured to serve as an API. This API is designed to facilitate medical appointments, and to allow users to make reservations for doctors. It leverages a PostgreSQL database to manage and store reservation data. The API is designed to be consumed by a front-end application, which is developed using React.js.

🛠 ER Diagram

Model diagram

💻 Link to front end

Link to Front End

💻 link to Kanban board information

Link to Kanban Board

Initial state

This project was completed by two Team members:

  • Kevin Cruz
  • Fisayo Michael

🛠 Built With

Tech Stack

Key Features

  • Ruby on Rails
  • API Endpoint
  • Professional Documentation
  • Linting for Code Quality
  • Postgres Database
  • Git Version Control

💻 Getting Started

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

Prerequisites

Before you begin, ensure you have the following prerequisites installed on your system:

  • Ruby: You need Ruby to run the Ruby on Rails application.
  • Bundler: Bundler is used to manage gem dependencies for your Ruby project.

Setup

In your terminal, navigate to the folder of your choice and clone the repository with the following commands:

cd my-folder
git https://github.com/EvansSnave/final-capstone-project-back-end.git

Install

After cloning the project, change into the project directory:

cd final_capstone_project_back_end

Install this project with:

  • gem install rails
  • bundle install

Credentials setup

In order to create databases and run the tests, you need to follow this steps:

  1. Remove config/master.key and config/credentials.yml.enc if they exist.
  2. Run rails secret. This will generate a key. Copy and reserve the key to use later.
  3. If you use Windows run: $env:EDITOR="code --wait"; rails credentials:edit If you use Linux run: EDITOR="code --wait" bin/rails credentials:edit
  4. Your editor will open a file, add at the bottom devise_jwt_secret_key: <the key you copied in step 2>
  5. Save the file and close the editor. New master.key, credentials.yml.enc files will be generated, and the key will be stored in Rails.application.credentials.devise_jwt_secret_key.

Database Setup

Create and migrate your database with:


rails db:create
rails db:migrate
rails db:seed

Usage

To run the project, execute the following command:


rails server
or
rails s

This should start your local server on http://localhost:3000/. Now, you can use the REST API client of your choice to interact with the API.

Tests

To run tests, navigate to the directory where the project is located on your machine, open your terminal, and follow these steps:

Test Suite This project contains a suite of unit tests which you can run to ensure everything is functioning as expected. To run these tests, you need RSpec installed.

To install RSpec if you haven't already, run:

gem install rspec After you've installed RSpec, you can run the tests with:

bundle exec rspec spec/controllers bundle exec rspec spec/models

👥 Authors

👤 EvanSnave

🔭 Future Features

  • Implement proper user authentication from the front-end to the server
  • Add authorizations to users

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

⭐️ Show your support

If you like this project please feel free to send us corrections for make it better we would feel glad to read your comments. And think If you enjoy it gift us a star.

🙏 Acknowledgments

  • Behance and Murat Korkmaz for the original design
  • Microverse for providing the opportunity to learn in a collaborative environment.
  • React.js Documentation for valuable resources on React development.
  • GitHub for version control and collaboration tools.

❓ FAQ (OPTIONAL)

  • Can I use with a templeate your project?

    • Of course we would feel honored.
  • Your project is free license?

    • Yeah, you can use it completely.

📝 License

This project is licensed under the MIT License - you can click here to have more details MIT.