Fork me on GitHub

Herr Knedel/Creative out of the crisis: booking a service with easyappointments

Created Fri, 16 Apr 2021 00:00:00 +0000 Modified Mon, 28 Mar 2022 18:08:42 +0000 Difficulty level: It may take a little longer

367 Words

The Corona crisis is hitting service providers in Germany hard. Digital tools and solutions can help to get through the Corona pandemic as safely as possible. In this tutorial series “Creative out of the crisis” I show technologies or tools that can be useful for small businesses.Today I show “Easyappointments”, a “click and meet” booking tool for services, for example hairdressers or stores. Easyappointments consists of two areas:

Area 1: Backend

A “backend” for managing service and appointments.

Area 2: Frontend

An end user tool for booking appointments. All already booked appointments are locked afterwards and cannot be booked twice.

Installation

I have installed easyappointments several times using docker-compose and can highly recommend this installation method. I create a new directory named “easyappointments” on my server:

x
+
Terminal

$ mkdir easyappointments
$ cd easyappointments

After that I go to the easyappointments directory and create new file named “easyappointments.yml” with the following content:

version: '2'
services:
  db:
    image: mysql
    environment:
      - MYSQL_ROOT_PASSWORD=root
      - MYSQL_DATABASE=easyappointments
      - MYSQL_USER=easyappointments
      - MYSQL_PASSWORD=easyappointments
    command: mysqld --default-authentication-plugin=mysql_native_password
    volumes:
      - ./easy-appointments-data:/var/lib/mysql
    expose:
      - 3306
    networks:
      - easyappointments-network
    restart: always

  application:
    image: jamrizzi/easyappointments
    volumes:
      - ./easy-appointments:/app/www
    depends_on:
      - db
    ports:
      - 8089:8888
    environment:
      - DB_HOST=db
      - DB_USERNAME=easyappointments
      - DB_NAME=easyappointments
      - DB_PASSWORD=easyappointments
      - TZ=Europe/Berlin
      - BASE_URL=http://192.168.178.50:8089 
    networks:
      - easyappointments-network
    restart: always

networks:
  easyappointments-network:

This file is started via Docker Compose. After that, the installation is accessible under the designated domain/port.

x
+
Terminal

$ docker-compose -f easyappointments.yml up

Create a service

Services can be created under “Services”. Each new service must then be assigned to a service provider/user. This means that I can book specialized employees or service providers.

The end user can also choose the service and the preferred service provider.

Working hours and breaks

General duty times can be set under “Settings” > “Business Logic”. But also the duty times of service providers/users can be changed in the “Working plan” of the user.

Booking overview and diary

The appointment calendar makes all bookings visible. Of course, bookings can also be created or edited there.

Color or logical adjustments

If you copy out the “/app/www” directory and include it as a “volume”, then you can customize the stylesheets and logic as you like.