Updated README.md

This commit is contained in:
Alex Tselegidis 2020-03-11 13:40:20 +01:00
parent 55a3265129
commit 3c39dc376c

120
README.md
View file

@ -1,18 +1,36 @@
Easy!Appointments
================
<h1 align="center">
<br>
<a href="https://easyappointments.org">
<img src="https://raw.githubusercontent.com/alextselegidis/easyappointments/master/assets/img/logo.png" alt="Easy!Appointments" width="203">
</a>
<br>
Easy!Appointments
<br>
</h1>
<img src="http://easyappointments.org/img/easyappointments-banner.png">
<h4 align="center">
A powerful Open Source Web Scheduler, that can be installed on your server.
</h4>
### Organize your business! Exploit human resources that can be used in other tasks more efficiently.
<p align="center">
<a href="#about">About</a>
<a href="#features">Features</a>
<a href="#setup">Setup</a>
<a href="#installation">Installation</a>
<a href="#license">License</a>
</p>
**Easy!Appointments** is a highly customizable web application that allows your customers to book
appointments with you via the web. Moreover, it provides the ability to sync your data with
Google Calendar so you can use them with other services. It is an open source project and you
can download and install it **even for commercial use**. Easy!Appointments will run smoothly with
your existing website, because it can be installed in a single folder of the server and of course,
both sites can share the same database.
![screenshot](screenshot.gif)
### Features
## About
**Easy!Appointments** is a highly customizable web application that allows your customers to book appointments with you
via the web. Moreover, it provides the ability to sync your data with Google Calendar so you can use them with other
services. It is an open source project and you can download and install it **even for commercial use**.
Easy!Appointments will run smoothly with your existing websitSe, because it can be installed in a single folder of the
server and of course, both sites can share the same database.
## Features
The project was designed to be flexible and reliable so as to be able to meet the needs of any
kind of enterprise. You can read the main features of the system below:
@ -22,62 +40,60 @@ kind of enterprise. You can read the main features of the system below:
* Workflow and booking rules.
* Google Calendar synchronization.
* Email notifications system.
* Standalone installation (like WordPress, Drupal, Joomla and other web systems).
* Standalone installation.
* Translated user interface.
* User community support.
* User community support.
### Installation
## Setup
To clone and run this application, you'll need [Git](https://git-scm.com) and [Node.js](https://nodejs.org/en/download/)
(which comes with [npm](http://npmjs.com)) installed on your computer. From your command line:
```bash
# Clone this repository
$ git clone https://github.com/alextselegidis/easyappointments.git
# Go into the repository
$ cd easyappointments
# Install dependencies
$ npm install
$ composer install
# Run the watcher
$ npm start
```
Note: If you're using Linux Bash for Windows, [see this guide](https://www.howtogeek.com/261575/how-to-run-graphical-linux-desktop-applications-from-windows-10s-bash-shell/) or use `node` from the command prompt.
You can build the files by running the `npm run build` command. This will bundle everything to a `build` directory.
## Installation
Since Easy!Appointments is a web application, it runs on a web server and thus you will need to
perform the following steps in order to install the system on your server:
* Make sure that your server has Apache/Nginx, PHP and MySQL installed.
* Create a new database (or use an existing).
* Create a new database (or use an existing one).
* Copy the "easyappointments" source folder on your server.
* Make sure that the "storage" directory is writable.
* Rename the "config-sample.php" file to "config.php" and set your server properties.
* Open your browser on the Easy!Appointments URL and follow the installation guide.
* That's it! You can now use Easy!Appointments at your will.
* Rename the "config-sample.php" file to "config.php" and update its contents based on your environment.
* Open the browser on the Easy!Appointments URL and follow the installation guide.
You will find the latest release at [easyappointments.org](http://easyappointments.org).
That's it! You can now use Easy!Appointments at your will.
You will find the latest release at [easyappointments.org](https://easyappointments.org).
If you have problems installing or configuring the application visit the
[official support group](https://groups.google.com/forum/#!forum/easy-appointments).
You can also report problems on the [issues page](https://github.com/alextselegidis/easyappointments/issues)
and help the development progress.
### Docker
To start Easy!Appointments using Docker in development configuration, with source files mounted into container, copy the `docker/.env.example` file to `docker/.env` and run:
## License
```
docker-compose up
```
Code Licensed Under [GPL v3.0](https://www.gnu.org/licenses/gpl-3.0.en.html) | Content Under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
inside the `docker` directory.
---
**Important: once the containers are set up, the `src/config.php` file will be overwritten. In some host environments you might need to manually change the BASE_URL value, if Docker cannot map the container to `http://localhost`.
Production deployment can be made by changing required values in .env file (DB_PASSWORD, APP_URL, APP_PORT) and running:
```
docker-compose -f docker-compose.prod.yml up -d
```
Database data will be stored in named volume `easyappointments_easyappointments-data`, and app storage (logs, cache, uploads) in `easyappointments_easyappointments-storage`.
To find where exactly they are stored, you can run
```
docker volume inspect easyappointments_easyappointments-storage
```
Production containers will automatically be restarted in case of crash / server reboot. For more info, take a look into `docker-compose.prod.yml` file.
### User Feedback
Whether it is new ideas or defects, your feedback is highly appreciated and will be taken into
consideration for the following releases of the project. Share your experience and discuss your
thoughts with other users through communities. Create issues with suggestions on new features or
bug reports.
### Translate Easy!Appointments
As of version 1.0 Easy!Appointments supports translated user interface. If you want to contribute to the
translation process read the [get involved](https://github.com/alextselegidis/easyappointments/blob/master/doc/get-involved.md)
page for additional information.
> Website [alextselegidis.com](https://alextselegidis.com) &nbsp;&middot;&nbsp;
> GitHub [@alextselegidis](https://github.com/alextselegidis) &nbsp;&middot;&nbsp;
> Twitter [@alextselegidis](https://twitter.com/AlexTselegidis)