GithubHelp home page GithubHelp logo

oovillagran / final-capstone-back-end Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 1.0 223 KB

This is the final capstone for the full stack web development program in Microverse.

Home Page: https://easyclinic-client.vercel.app/

License: MIT License

Ruby 90.64% HTML 9.19% Shell 0.17%
backend postgresql ruby-on-rails api

final-capstone-back-end's Introduction

EasyClinic API App

πŸ“— Table of Contents

πŸ“– EasyClinic API app

EasyClinic is a back-end application, for our Final Capstone Project. It is based on an app to book an appointment with a doctor from a wide health network.

EasyClinic front-end application is available here.

πŸ›  Built With

Tech Stack

  • Ruby
  • PostgreSQL

Key Features

  • Use of Ruby on Rails framework.
  • Back-end application
  • Use of Kanban board

(back to top)

πŸš€ Live Demo & preview

API Documentation(#api-documentation-)

Here you can see the API Documentation, in render.

API URL

You can use this URL address to consump data from our API using localy or using the URL provided by render https://rails-xdb0.onrender.com

πŸ“œ Kanban Board

πŸ’» Getting Started

Follow these steps in order to run ruby code.

Prerequisites

First, you need to ensure that you have Rails and Ruby installed on your computer.

Setup

It varies depending on your operating system so here are some links to help you install it on Windows and on Ubuntu.

For MacOS run the following commands

  brew install rbenv ruby-build
  # Add rbenv to bash so that it loads every time you open a terminal
  echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
  source ~/.bash_profile

  # Install Ruby
  rbenv install 3.0.1
  rbenv global 3.0.1
  ruby -v

This example shows how to install Ruby 3.0.1 which was the latest version in April 2021, but you can check to see if there is a newer version here. Iy is also assumed that you have homebrew already installed on your Mac.

Usage

Before running the project, make sure you have Ruby and Rails installed on your system. You can refer to the official Ruby on Rails installation guide for instructions on how to install them. Once you have ruby installed, clone this repository

First navigate to the project directory in your terminal:

  cd your-project-directory

Then install the required gems by running in the terminal:

  bundle install

Create the database by running:

  rails db:create

Run the database migrations to set up the database schema:

  rails db:migrate

Optionally, you can seed the database with initial data (if the project provides seed data) by running:

  rails db:seed

Start the Rails server:

  rails server

To see all API Endpoints available, in your preferred browser, navigate to:

  https://rails-xdb0.onrender.com/api-docs/index.html

Run tests

To run tests, run the following command in the terminal:

  rspec

πŸ‘₯ Authors

πŸ‘€ Federica Ulzurrun

πŸ‘€ Rashed Arman

πŸ‘€ Kola Kolade

πŸ‘€ Eric Antwi

πŸ‘€ Oscar Villagran

(back to top)

πŸ”­ Future Features

The following are the future features that will be added to the project.

  • Add images and videos section.
  • Add payment options.

(back to top)

🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

⭐️ Show your support

If you like this project you can give us a hand by recommending either one of us to potential employers! πŸ˜‰πŸ€

(back to top)

πŸ™ Acknowledgments

We would like to thank those who have motivated us to keep on fighting despite how tough the journey may become.

(back to top)

πŸ“ License

This project is MIT licensed.

(back to top)

final-capstone-back-end's People

Contributors

oovillagran avatar federicaulzurrun avatar mylo16 avatar

Stargazers

 avatar HernΓ‘n GΓΌemes avatar

Watchers

 avatar

final-capstone-back-end's Issues

Create "Delete Doctors" Page [2pt]

  • Make the "Delete Item" link in the navigation panel lead to a list of Doctors with name and "Delete" button.
  • Implement the "Delete" button functionality to mark doctors as removed.

Create a Navigation Panel [1.5pt]

  • In the navigation panel, the user can see links to
    • Doctors
    • "Book an appointment" form (Username is autofilled.)
    • My appointments.
    • Add doctor
    • Delete doctor

[5Xpt] - Generate Models based on the ERD

Remember to :

  • Generate the models
  • Implement associations and relationship
  • Create migrations. (Create tables)
  • Create validations
  • Create a Test for those validations
  • Add Cancancan

Design Home Page [2pt]

  • Display a list of doctors.
  • Make the list items clickable, leading to the details page.

[3.5Xpt] - Create ERD

Remember to:

  • Create it using any online tool
  • Explain the diagram to the rest of the group

Create "Add Doctor" Form [2pt]

  • Create a form for adding a new doctors.
  • Make the "Add Doctor" link in the navigation panel lead to this form.
  • Implement form submission and validation.

Create "Book an Appointment" Page [2pt]

  • Create a page for reserving an appointment.
  • Provide inputs for date and clinic (autofill username and selected item).
  • To reserve an appointment, the user has to select a date and clinic.

Create Appointments Page [2pt]

  • When the user clicks the "My appointments" link in the navigation panel they can see a list of their appointments (with information about doctor's name, date, clinic)

Design Details Page [2pt]

  • Create a details page for the selected item.
  • Display doctors details.
  • Implement the "Appointment" button functionality.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.