All projects

Project

Gabriel — SPA studio website

A Flask website for a SPA studio in Norilsk — a catalogue of 110 services with prices and online booking via YCLIENTS

  • Python
  • Flask
  • SQLAlchemy
  • SQLite
  • YCLIENTS
  • JavaScript
  • pytest
  • gunicorn

Closed-source project

Home page
Home page
Service categories with animated illustrations
Service categories with animated illustrations
Price list: 110 treatments in 11 categories
Price list: 110 treatments in 11 categories
Service page with booking for a chosen time
Service page with booking for a chosen time
110
bookable services out of 149 in the YCLIENTS price list

Problem

The studio needed its own website with an up-to-date price list and online booking. Services, prices and bookings already live in YCLIENTS, so the website has to take the data from there instead of duplicating it by hand.

Solution

A Flask app with a create_app factory and blueprints, SQLAlchemy models for categories and services. The price list is imported from a YCLIENTS export with the flask import-xls CLI command — 149 services, of which only those available for online booking reach the site. The «Book» button opens YCLIENTS right on the chosen service or master. The design uses a dark palette and plain JavaScript animations without heavy libraries, respecting prefers-reduced-motion. Pages are covered with pytest tests.

Results

  • One-click booking straight to the chosen service
  • Price list updated with a single command from a YCLIENTS export