01 — WORK · CYLO SOFTWARE

Real systems for
real businesses.

A small but growing portfolio of CRMs, websites, applications and integrations — each one built end-to-end and shipped to keep improving long after launch.

02FEATURED CASE STUDY
Maqoor premium dry cleaning storefront
maqoor.com

2025 · YEREVAN, ARMENIA

Maqoor — Armenia's #1
Premium Dry Cleaner

Maqoor needed a customer-facing platform that matched the quality of the in-store experience: fast, multi-language, orderable from home, and easy to operate. Cylo designed and built the entire web product — from brand-aligned UI to the order flow with home pickup & delivery scheduling.

React logoReactTypeScript logoTypeScriptNode.js logoNode.jsPostgres logoPostgresTailwind logoTailwindi18n (EN/RU/HY)

Multi-language experience

Full English, Russian and Armenian translations with a clean language switcher on first visit.

Online ordering with home pickup

Customers schedule pickup & delivery; the team gets a structured order they can actually fulfil.

Service catalog

Casual clothing, premium garments, shoes restoration, leather and more — each with pricing and lead times.

Operations integrations

Telegram notifications, location & hours, customer reviews — one connected system.

Maqoor services layout — pricing grid
Maqoor lockers page — 24/7 smart pickup
Maqoor mobile app page
03FEATURED CASE STUDY · GARMENT TRACKING SYSTEM
Maqoor GTS — Department KPI dashboard tracking every garment, staff and order
gts · garment tracking system
world-first · only at maqoor

2026 · WORLD-FIRST FOR DRY CLEANING

Maqoor GTS — the only garment tracking system in the world.

A full-stack operations platform built end-to-end by Cylo and powered by our own barcode scanners. Every garment, every staff action, every order is tracked from intake to delivery — with live KPIs, full audit trails and zero lost items. No other dry cleaner in the world has this. Maqoor trusted us to build it from scratch — and it now runs their entire operation.

ReactTypeScriptJavaSpringPostgresCustom scannersRLSAudit logsSmart lockers
Pain point
Dry cleaners worldwide lose garments, can't prove who did what, and have no real KPIs — only Maqoor refused to accept that.
Solution
Cylo built a full GTS: barcode scanners at every department, per-staff KPIs, per-order tracking, returns, lockers and audit logs.
Result
100% garment visibility, automated cleaning workflow, zero lost items, and the only operation in the world running like this.

Custom barcode scanners

Provided by Cylo and wired into every department — examination, washing, stain, dry, shoes, ironing, packaging, delivery.

Per-garment history

Every scan, return and staff action stored on the garment timeline — full chain of custody from intake to pickup.

Per-staff KPIs

Live productivity per employee: scans, avg time per garment, returns, breaks and active hours — fair, measurable, automatic.

Order tracking & search

Search by Order ID or Garment ID and see status, department, last update and every linked garment in one place.

Returns dashboard

Department-to-department transitions tracked in a matrix — instantly spot bottlenecks and rework loops.

Smart locker integration

24/7 self-service pickup with door-level status, occupancy, and order-to-door binding.

User & role management

Admins, department staff and shift schedules with strict role-based access and audit logging.

Complete audit trail

Scans, error scans, admin changes, user edits, logins, webhooks and password resets — all logged and filterable.

GTS — department barcode scanner used by staff
GTS — per-staff activity timeline with KPIs
GTS — per-garment processing timeline
GTS — order search with department status
GTS — returns dashboard by department transition
GTS — smart locker management
GTS — user management with departments and roles
GTS — full system audit log

// every.garment.scanned() => tracked.forever()

04FEATURED CASE STUDY · TELEGRAM BOT
Maqoor Telegram bot profile
@MaqoorDryCleaning_bot

2024 · TELEGRAM BOT

Order tracking, in the chat customers already use.

Customers kept calling the store to ask the same question: "Is my order ready?" Cylo solved it with a Telegram bot that lets anyone check their order in seconds — no app install, no login, no friction. Just send the Order ID and get the status.

Pain point
Customers had no self-serve way to check status — store phones rang all day.
Solution
Telegram bot with Order ID lookup, multilingual UX, and ready-order push notifications.
Result
Fewer support calls, faster pickups, happier customers.

Key features

Multilingual flow

Հայերեն, Русский, English — language picked on first /start so every customer feels at home.

Order ID lookup

Send the receipt number, get a structured order summary in one message.

Full order data

Order ID, type (in-store / pickup), total cost, payment status — everything on one screen.

Ready notifications

The bot pings customers automatically the moment their order status flips to Ready.

Bot language picker
Order summary in bot
Order ready notification
Telegram bot QR code

// ping('order.ready') => customer.notified === true

05FEATURED CASE STUDY · HR AUTOMATION
HR OS dashboard — staff attendance, departments, payroll
internal · hr automation

2026 · HR OPERATING SYSTEM

HR OS — replace your HR department

A complete HR operating system designed for companies that want their workforce to run on autopilot — without an HR team. One platform handles staff planning, vacations, absences, overtime, salaries, contracts, onboarding, and candidate interview management end-to-end.

ReactTypeScriptTailwindPostgresAuth & RolesRLSAudit Logs
Pain point
HR work scattered across spreadsheets, chats and people — expensive headcount, errors and zero audit trail.
Solution
One automated HR OS: planning, vacations, absences, overtime, payroll, contracts, onboarding and hiring in a single system.
Result
Companies operate without an HR department — managers self-serve, rules enforce themselves, and everything is logged.
Daily Planner — auto-generated assignments per department
Staff Vacations calendar with balances and approvals
Staff Scheduling — weekly schedule with absences and backup coverage

Daily planning & scheduling

Auto-generate daily plans and weekly schedules across departments with shift coverage, backup rules and minimums.

Vacations & absences

Requests, approvals, balances, calendar views and history — sick, unpaid, no-show and rotation off all tracked in one place.

Overtime & salaries

Overtime/undertime accruals feed straight into monthly payroll for active staff with full department breakdowns.

Contracts & onboarding

Digital contracts, onboarding checklists and document storage so new hires are productive from day one.

Candidates & interviews

Pipeline for candidates, interview scheduling and decisions — hiring without a recruiter.

Roles, KPIs & audit logs

Role-based access, department KPIs, problems board and full activity logs for compliance.

// hr_department.replace(with: software)

06FEATURED CASE STUDY · CRM
Customer Loyalty Management CRM dashboard
crm · customer loyalty

2025 · CRM PLATFORM

Customer Loyalty Management

A focused CRM for small and mid-sized teams that need real customer context — not a 500-feature suite they will never use. Customer Loyalty Management puts profiles, activity timelines, imports and user management into one clean workspace with strict role-based access.

ReactTypeScriptPostgresRLSCSV ImportRole-based access
Pain point
Customer data scattered across spreadsheets, emails and one-off tools — nobody had the full picture.
Solution
One CRM with searchable customer profiles, activity history, bulk import and admin controls.
Result
Faster onboarding of existing data, cleaner handoffs between team members, and safe access by role.

Customer profiles

Contact, status, last touch and a chronological activity feed — everything you need before a call.

Bulk CSV import

Move existing customer lists in minutes with validation, deduping and field mapping.

Roles & bootstrap admin

Strict role separation backed by RLS, plus a guided bootstrap for the first admin.

User management

Invite teammates, manage access, and keep an audit-friendly trail of who did what.

Customer Loyalty Management — customers dashboard with loyalty points
Customer Loyalty Management — problems board with overdue tracking
Customer Loyalty Management — returns and refunds tracking

// crm.context => better_conversations

07FEATURED CASE STUDY · INTEGRATIONS
CRM Webhook Handler running in Docker Desktop — Spring Boot service, Postgres and webhook receivers
integrations · webhook bridge

2025 · CRM INTEGRATION

CRM Webhook Handler

A reliable bridge between external CRM platforms and internal business apps on a secure local network. The service receives CRM events over HTTPS, fans them out through a RabbitMQ topic exchange into two queues, and forwards structured events to downstream consumers — with retries, backoff and durability baked in.

Java logoJavaSpring Boot logoSpring BootPostgreSQL logoPostgreSQLRabbitMQ logoRabbitMQDocker logoDockerHTTPS / REST API
Pain point
CRM webhooks were dropped on restarts and overwhelmed internal apps with spikes — no retries, no isolation.
Solution
Spring Boot HTTPS endpoint feeding a Dockerized RabbitMQ topic exchange with two queues, exponential backoff and a max-attempts policy.
Result
Durable, ordered delivery to internal applications inside the local network — zero lost events across deploys and CRM outages.

HTTPS webhook endpoint

Secure REST endpoint that authenticates and validates CRM events before queuing them.

Topic exchange + 2 queues

RabbitMQ topic routing splits traffic into two queues for reliable, scalable, parallel processing.

Durable Docker RabbitMQ

RabbitMQ runs in Docker with persistence — queued events survive service and broker restarts.

Backoff & max attempts

Exponential backoff (delay 3000ms, multiplier 2) with maxAttempts = 10, then auto-deletion to keep queues healthy.

Internal LAN delivery

Forwards structured events to internal apps (e.g. Armenian software) inside a secure local network.

Extensible by design

New consumers plug into the topic exchange via routing keys — no changes to producers.

// crm.event => exchange.topic => queue.{1,2} => internal.app

09IN THE PIPELINE

In design

Restaurant ordering platform

Details coming soon. Want to be the next case study?

Talk to us

Planned

Logistics integration suite

Details coming soon. Want to be the next case study?

Talk to us

Open slot

Your project here

Details coming soon. Want to be the next case study?

Talk to us