# Guide

The goal of InfyCare is to Manage your hospital appointment booking digitally.

# Technologies Used

This system uses multiple technologies to give the best possible experience.

  • PHP with Laravel Framework 10.x
  • MySQL 5.6+
  • PHP 8.1
  • jQuery
  • Ajax

# Installation Guide

We tried our best to make the installation of the system as easy as possible. System Requirements It is assumed that you have primary knowledge Laravel installation knowledge since this application is built on Laravel.

# System Requirement

It is assumed that you have primary knowledge Laravel and JS application installation knowledge since this application is built on Laravel with JS.

You can read about laravel Requirements here (opens new window)

(Optional) You need update below variables in php.ini file if you want to send bigger files.

upload_max_filesize = 50M

max_file_uploads = 50

post_max_size = 100M

# Setup InfyCare into Local Environment

You can set up InfyCare into your local by using given zip.

Here are some steps to set up InfyCare into your local environment :

# 1. Install xampp/wamp (if you don't have it).

# 2. Create folder InfyCare

  • if you are using wamp then create InfyCare folder under you_path_to_wamp/www/
  • if you are using xampp then create InfyCare folder under you_path_to_xampp/htdocs/

# 3. Unzip dist/src zip to InfyCare folder

# 4. Point the domain to the uploaded folder

You need to create virtual host first to setup InfyCare. You can find steps here to create virtual host.

Point your domain or subdomain to the InfyCare folder.

Please note that, InfyCare must be installed on a primary domain or subdomain. Installing on a sub-folder will not work, for example:

    example.com/InfyCare (Invalid)
    localhost/InfyCare (Invalid) if you are putting it in sub folder or root website)
    example.com (Valid)
    local.InfyCare.com (Valid)
    InfyCare.test (Valid)

# 5. Steps to setting up the project

Please click here to follow the next steps for setting up the project

# Setup InfyCare System

If you have purchased the InfyCare system then you will be able to find the zip named dist.zip.

Now if you want to set up InfyCare on your server then you can directly copy the dist.zip folder to your web root directory on a server and the following steps:

# 1. Copy files to web server

Upload dist.zip to your web server's root (public_html) and extract it there.

# 2. Setup your database

  1. Open PHPMyAdmin on your server and do a login.

Setup Default DB

  1. Click on the Databases tab.

Setup Default DB

  1. Create a new database and specify a Database name of your choice and Click Create button.

Setup Default DB

  1. Now on the left, select the database (infy_care) OR the one that you have created.

  2. Click Import in the top menu

Setup Default DB

  1. Under Import, choose the default sql file from dist/database/infy_care.sql and click button Go.

Setup Default DB

# 3. Setup environment .env file

  1. Open .env file from your server's root folder.

Setup Default DB

  1. Update your .env file

You need to change the following information into your environment (.env) file.

- APP_NAME - Name of your Application
- APP_URL - Change this URL with your server URL (including trailing path if you are putting it in sub folder or root website)
- DB_HOST - Put your database hostname here
- DB_PORT - Put your database port here if it does not default to 3306
- DB_DATABASE - Change it to your database name
- DB_USERNAME - Name of your database user
- DB_PASSWORD - Password of your database user

You will also need to set up mail configuration, you can read more about here for that setup based on mail service that you use.

- MAIL_DRIVER 
- MAIL_HOST
- MAIL_PORT
- MAIL_USERNAME
- MAIL_PASSWORD
- MAIL_ENCRYPTION
- MAIL_FROM_ADDRESS 
- MAIL_FROM_NAME

If you want to store your files to direct your s3 bucket then you have to use following .env variables. You need to change FILESYSTEM_DRIVER and MEDIA_DISK value to s3 when you are using AWS file storage.

- AWS_ACCESS_KEY_ID=
- AWS_SECRET_ACCESS_KEY=
- AWS_DEFAULT_REGION=us-east-1
- AWS_BUCKET=
- AWS_ENDPOINT=
- AWS_URL=

Or you can use your choice of storage driver to store your media assets if you want. All of your attachments will be placed into that.

Set Stripe configuration it is using while book appointment payments. Here are some links by using it you will get an idea about how to generate stripe API keys.

- STRIPE_KEY=
- STRIPE_SECRET_KEY=
- STRIPE_WEBHOOK_SECRET_KEY=

Also, please set the google captcha keys too. Here (opens new window) is link to generate and get the keys of google captcha.

- NOCAPTCHA_SECRET=
- NOCAPTCHA_SITEKEY=

Follow below guide to make the Google Calendar Integration works. you need to set following env. You need to enable the google calendar API, Please Click Here (opens new window) to generate the the OAuth file.

Also Watch this video (opens new window) to get the file.

Set the redirect URL to : YOUR_APP_URL/google/redirect // e.g https://infy-care.com/google/redirect

Put the downloaded file to storage/your-file-name.json

- GOOGLE_OAUTH_PATH="your-file-name.json"

Set up the Paystack Credentials into env:

You have to create account from Here (opens new window) and then you can find steps here to generate sectet keys Here (opens new window)

Please use your email into Merchant Email

- PAYSTACK_PUBLIC_KEY=
- PAYSTACK_SECRET_KEY=
- PAYSTACK_PAYMENT_URL=https://api.paystack.co
- PAYSTACK_MERCHANT_EMAIL=

DO NOT FORGET TO FOLLOW GIVEN STEPS : You need to add the callback url into your paystack account : APP_URL/paystack-payment-success

Set up the Paypal Credentials into env:

You have to create account from Here (opens new window) and then you can find steps here to generate keys Here (opens new window)

Please use your email into Merchant Email


- PAYPAL_CLIENT_ID=
- PAYPAL_SECRET=
#change mode to "live" while moving to production
- PAYPAL_MODE="live"

Set up the Razorpay Credentials into env:

You have to create account from Here (opens new window) and then you can find steps here to generate keys Here (opens new window)

Please use your email into Merchant Email


- RAZOR_KEY=
- RAZOR_SECRET=

Set up the Authorize.net Credentials into env:

You have to create account from Here (opens new window) and then you can find steps here to generate keys Here (opens new window)

Please use your email into Merchant Email


- AUTHORIZE_LOGIN_ID
- AUTHORIZE_TRANSACTION_KEY=

Set up the Paytm Credentials into env:

You can find steps here to generate keys Here (opens new window)

Please use your email into Merchant Email


- PAYTM_ENVIRONMENT=
- PAYTM_MERCHANT_ID=
- PAYTM_MERCHANT_KEY=
- PAYTM_MERCHANT_WEBSITE=
- PAYTM_CHANNEL=
- PAYTM_INDUSTRY_TYPE

Set Zoom configuration it is using in Live Consultations module. So first of you need to create your zoom app into zoom marketplace and need to generate the API Keys and credentials.

  • Go to Link (opens new window)and do sign in.

  • Click Develop button on header and select Build App menu.

  • Choose the JWT and create an application with the app name that you want.

  • Input required information and click Continue until your app will be activated.

After completing the above steps, you need to update your .env file by placing below keys inside that.

Please use your email into Merchant Email


- ZOOM_API_URL="https://api.zoom.us/v2/"
- ZOOM_API_KEY="INPUT_YOUR_ZOOM_API_KEY"
- ZOOM_API_SECRET="INPUT_YOUR_ZOOM_API_SECRET"

# 4. Admin login

You can do admin login by accessing given URL.

YOUR_APP_URL/login

email: admin@infycare.com

password: 123456

# 4. Doctor login

You can do doctor login by accessing given URL.

YOUR_APP_URL/login

email: doctor@infycare.com

password: 123456

# 4. Patient login

You can do patient login by accessing given URL.

YOUR_APP_URL/login

email: patient@infycare.com

password: 123456

# Key Features and Concepts

Here are some Key Features and Concepts that InfyCare provides.

# Landing Page

Its comes up with beautiful landing page, which helps patients to get information about the hospital and doctors and their specialities.

Patient can book appointments from landing page and also registered to system. They also can submit queries via contact us form.

# Admin Panel

We have created beautiful and user attractive admin panel to manage the contents for landing page.

Admin can manage all the doctors / patients / appointments and also able to create new staff's account with assigned roles / permissions.

You can change the system settings from admin panel, like you can change the hospital schedule time, change contact email, number, etc.

# Dashboard

Dashboard is more important thing in each application, as you can get quick information from there.

Here you can get information about today's appointments, total registered patients and etc.

# Staff Management

You can create new user accounts with specific permissions if you want. Staff can also able to do login and he can see the lists of modules as per assigned permissions.

# Doctors Management

Here you can see lists of doctors that you have added to your system, right now only admin can add new doctors. you are also able to change the details of doctor too.

# Patient Management

Here you can manage the patients that registered via landing page or added by you. You can change their password and other details from here.

You can see lists of appointment booked by specific patients in detail screen.

# Appointments Management

Appointments are generally for patients, but some case if patient wants admin to book their appointment, at that time this will be usefull. Admin can book new appointments from here on behalf of patient.

Also, you can see lists of appointments here, there is another option there Calendar view, by clicking on it you can see the lists of appointments in calendar view.

# Patient Visits Management

Admin can add / delete patient visits records from here. Patient visits are the records who will be entered by the doctors to track patients visits and the other information about their patients.

# Services & Categories Management

Here you can add different kind of Services and its categories, Services are generally used in appointments. Patient will Select the service while booking the appointments.

You can define the service charge per service.

# Front CMS

Admin can change each content of landing page from here. e,g Upload new images for sliders, change some texts on it, etc.

# Schedules

Schedule means the hospital timing per day. Admin will define the hospital time from Settings -> Schedules.

Then doctors are able to choose time between the hospital time, if Admin is saying that hospital will be closed on sunday, then doctor will not able to choose schedule time on sunday.

# Settings

Settings will include some other set of modules .

  • General Setting
  • Clinic Schedules
  • Roles & Permissions
  • Currencies
  • Countries
  • States
  • Cities

# Doctor Panel

# Dashboard

Doctors can see lists of today's appointments count and other widget in dashboard. they can also able to see the lists of recent appointments as per day / week / month.

# Appointments

Here doctors can see their appointments only, they can later change the status to checked-in, check-out and cancel.

# Schedules

Doctor can set their availability as per day in this module, so patient will be booked slots accordingly. if doctors are selecting that Monday they will be available from 10:00 - 12:00 then patient can see slots between that time only.

# Patient Visits Management

Here doctors can add new visit record for patients, and track their health progresses.

# Patient Panel

# Dashboard

Patient can see lists of appointments in dashboard, they can see today's and upcoming appointments here.

# Appointments

Here you can book new appointment with specific doctor by selecting different services. Later you can cancel the appointment if you don't want to go. Also, you can delete your appointment records too.

# Visits Listing

Here you can see the lists of visits added by your doctors. in visit details screen you are able to see the lists of prescriptions, notes, observation notes and problems added by doctor.