izyElec

Cover Image for izyElec
Pierre-Yves Léglise
Pierre-Yves Léglise
Posted underProjects

NF C 15-100 Jobsite Pocket Reference

Offline-first Progressive Web App for electricians

izyElec is a free Progressive Web App designed as a chantier aide-mémoire for French residential electrical work under NF C 15-100. It helps electricians and installers quickly look up room requirements, cable sizing hints, earthing / equipotential bonding notes, bathroom volumes 0 / 1 / 2, glossary terms, and a Consuel-oriented checklist — including fully offline use on a phone.

It is not a conformity certification tool and not a substitute for the official AFNOR text. Decisions on site must always be checked against the current standard and the real job context.

The product is published by axialdata (Pierre-Yves Léglise EI) and is available without an account.

Technical Stack

Frontend:

  • React 19 + TypeScript
  • Vite 8 for build and development
  • Tailwind CSS 4 with a custom design-token theme (light / dark)
  • React Router DOM for client-side navigation
  • Lucide React for icons
  • Oxlint for linting

Offline & local data:

  • vite-plugin-pwa + Workbox (prompt-based updates)
  • Service worker with offline shell and navigate fallback
  • IndexedDB persistence via idb-keyval (checklist state)

Deployment:

  • Static SPA served by Nginx in a single Docker image
  • Coolify-compatible (Dockerfile, port 80, /healthz)
  • Production URL: https://izyelec.com

Security headers (edge):

  • Strict CSP, HSTS preload, COOP / COEP / CORP
  • Referrer-Policy, Permissions-Policy, X-Frame-Options DENY
  • Tuned for a high score on MDN HTTP Observatory

Main Features

Room assistant:

  • Per-room shortcuts (living room, kitchen, bathroom, bedroom, WC, circulation, outdoor, garage…)
  • Must-have points, watchouts, and usual circuits (section / breaker)
  • Deep links to bathroom volumes and earthing chapters when relevant

Calculators:

  • Cable section & voltage-drop helper (mono / tri, copper / aluminium)
  • Breaker ↔ section sanity check with status pills
  • Quick notes for DDR 30 mA, GTL / board, and Consuel earth reminders

Earthing & equipotential bonding:

  • Dedicated chapter for earth electrode, PE, LEP, LEL / LES
  • Practical rows for sections / elements and measurement reminders

Bathroom volumes:

  • Interactive volume diagram (tray / bath geometries)
  • Allowed / forbidden material guidance per volume 0 / 1 / 2
  • Cross reminders for DDR 30 mA and local equipotential bonding (LEL)

Glossary:

  • Searchable acronyms and technical terms (PE, LEL, DDR, GTL…)
  • Filters by acronym / term

Jobsite checklist:

  • Before / during / tests style checklist templates
  • Project name + progress bar
  • Persisted locally in IndexedDB (works offline)

Offline & PWA

  • Installable on Android / desktop (Chrome, Edge) and iOS “Add to Home Screen”
  • Native install prompt when the browser exposes beforeinstallprompt
  • Offline badge and update banner when a new service worker is waiting
  • App shell cached for use without network coverage on site

Responsive Layout

  • Mobile-first UI kept as the primary chantier experience
  • Tablet layout: wider content column and multi-column grids
  • Desktop layout: sticky side navigation, expanded content width, calculators and reference blocks side-by-side
  • Dark mode with persistent preference

SEO & Discoverability

  • Per-route titles and descriptions
  • Open Graph / Twitter meta + share image
  • JSON-LD (WebApplication + Organization)
  • sitemap.xml, robots.txt, llms.txt, and AI catalog endpoints
  • Mandatory French legal notices (LCEN)
  • Free access, no user account, local-first storage
  • Optional self-hosted audience measurement (Rybbit) documented in the privacy section

Used in production since September 2026.

Last update : v1.1.1 – September 2026

Resources:

Application : https://izyelec.com

Publisher : https://www.axialdata.net

<< Back

More projects :

Cover Image for Game event landing page demo

Game event landing page demo

Form validation. Simple landing page example to play with form validation in Javascript. Ressources : Live demo Github repository

Cover Image for Esprit Guitare – Headless Migration

Esprit Guitare – Headless Migration

From Classic WordPress to a Headless Production Site Production-ready migration for a local lutherie workshop Esprit Guitare is a lutherie and electronics repair workshop based in Schœlcher, Martinique. The public website originally ran as a classic WordPress install (OceanWP theme, multiple plugins for booking, opening hours, reviews, forms, and SEO). In July–August 2026, the site was […]