Skip to main content

The who and the why before the what.

So this is where we talk about the what.

Case studies

An example is worth a 1000 words. And 66?

Sandlab

Our sandbox. But also our lab.

Blog

Articles. Not often enough. But sometimes.

Contact

Eco-design of the akiani.fr website

Architecture

Static site generated with Astro. No CMS in production, no database queried on every visit. The pages are HTML files served directly.

On the browser side

No JavaScript framework on the client side. Interactions (navigation, dropdowns, scroll animations, carousels, article tables of contents, video facades) are written in vanilla JavaScript, page by page. CSS is concatenated into one bundle per page, minified, with no framework.

Media and fonts

Images in WebP, sized for their use, loaded lazily outside the viewport. Figtree and Source Serif 4 fonts, hosted on the same domain (no fonts.google.com), with a subset version limited to the glyphs used on the home page.

One blog article embeds a YouTube video, in French and in English. Checked on 14 August 2026 against the build: it is a raw iframe, with loading="lazy", with no thumbnail and no prior click. The third-party player therefore loads on scroll. The facade previously announced on this page was never built: the statement is corrected here, and the facade remains to be implemented.

Measurement

Internal audit using EcoIndex (GreenIT method), Lighthouse, and the RGESN 2024 as a reading grid. Local measurement on the production dist, 1920×1080 viewport, cache disabled, versioned scripts. See ecoindex.fr for the official method.

RGESN 2024 conformity

We ran the site through the RGESN 2024 grid (78 criteria, May 2024 version published by France's Arcep). Here's where we stand on the criteria that apply to the site.

RGESN compliance
30 % (16/54 applicable criteria · target 75 %)
  • 16 compliant
  • 22 to expand
  • 12 to validate
  • 2 to open/check
  • 24 N/A
  • 2 non compliant

Last pass : 2026-05-27 · internal (Akiani tooling), no external audit to date

Performance budgets

We set two thresholds per indicator: a target we aim for, and a regression threshold that triggers a decision before deployment. It is a method safeguard, not an automated test that breaks the release. We also look separately at first-load (empty browser cache) and subsequent navigation (assets already cached), because the volume transferred is nothing alike.

Performance budgetsMeasured on 27 May 2026, on the home page unless stated otherwise. Uncompressed weights, as produced at build time.
IndicatorTargetRegression thresholdCurrent
First load (empty cache)
Transferred weight 500 Ko 1500 Ko 580 Ko
HTTP requests 20 30 12
CSSNon-gzip measurement in dist/. OVH gzip ≈ 14 Ko (below target). Pre-compressed .gz provided. 30 Ko 50 Ko 71 Ko
JavaScript 15 Ko 30 Ko 10 Ko
FontsFigtree-Variable + Source Serif 4 300/400 (sous-set page home) 100 Ko 150 Ko 120 Ko
DOM nodes 800 1500 322
Subsequent page (warm cache)
Transferred weight (internal navigation)Not measured in this audit, measurement postponed (see AC-010) 50 Ko 200 Ko -
Requests (internal navigation) 5 12 -

Third-party services and host

We separate here the external components used as they are, without a contract, from the host, which is under a dedicated contract.

External components without a contract

  • Vimeo (behind a facade) · presentation videos, 24 pages · self-hosted thumbnail, player.vimeo.com iframe inserted only on click · 0 Ko until the user clicks
  • YouTube (raw iframe) · replay of the Weezdays conference, one blog post in FR and EN · none, the iframe loads on scroll (loading=lazy) · YouTube player load

Host under contract

  • OVH · shared hosting · Located in France (Roubaix/Strasbourg)
    PUE : 1.28 group (DC granularity not published) · WUE : not published · electricity : French ENEDIS mix ≈ 21 g CO₂eq/kWh

What is left to work on

The criteria listed below need their justification expanded, a topic opened, or have been marked non compliant as things stand. Criteria that are only waiting for a new measurement are not here, they are in the downloadable JSON file.

  • 4.4 User activation of third-party services : Check on 2026-08-14: compliant for the 24 Vimeo facades (self-hosted thumbnail, iframe inserted on click), NON-compliant for the Weezdays post (FR + EN), which embeds a raw youtube.com iframe with loading=lazy. It loads on scroll, without a click or consent. The criterion therefore changes from ok to non-compliant: the previous version described a YouTube facade that had never been implemented. Correction tracked by AC-012.
  • 4.6 Only media that conveys information : 2026-05-27 audit: footer-anim (footer-bg-anim webm 96 Ko) and hero-anim (76 Ko) = decorative animations. The informational content is provided by text + static image (footer-bg.webp 89 Ko fallback). Accepted non-compliance: no added informational value. Mitigation through 4.15 (stop button).
  • 4.12 Indicate significant environmental impacts : No current feature has a sufficiently significant impact to warrant an alert, to be documented explicitly.
  • 1.1 Positively assess the usefulness of the service against its environmental impacts : Responses to the 9 Designers Éthiques questions + ADEME Empreinte Projet level 1 consequence tree to be produced
  • 1.3 Identified digital eco-design lead : Lead appointed on 2026-08-14: Sébastien Klifa, who is also responsible for digital accessibility. The criterion still needs to be expanded until the role and duties are written into the declaration and the deputy is appointed.
  • 1.6 Responsible and proportionate data collection : The /contact/ form collects the name and email address, which are required in order to respond, then company, job title, telephone number and contact preference, all optional. Nothing else: no account, no tracker, no third-party service in the processing (contact.php endpoint on the site's own domain). Purposes, legal basis and retention criteria are detailed in the privacy policy. Corrected on 2026-08-14: the previous version stated that Akiani had no active form (Gabriel audit dated 2026-08-11, finding C15).
  • 2.1 Define the list of supported hardware profiles : Document desktop + mobile + old Android (≥ 5 years) + iPhone N-3 + MBP 2015
  • 2.7 Maintenance and decommissioning strategy : Mention 3 subtypes: preventive (Astro/dependency updates), corrective (bugs), adaptive (features). URL/content end-of-life plan.
  • 2.8 Require suppliers to follow an environmental approach : List suppliers (OVH, external freelancers) + environmental clauses or stated approach
  • 3.2 Architecture adapting resources to consumption : Pre-built static Astro = no application autoscaling. Document shared OVH hosting capacity.
  • 3.7 Optimize use of dev/pre-production/test environments : Document the resource efficiency of non-production environments: OVH pre-production shut down when not in use, CI triggered only on relevant PRs, resource-intensive tasks (bulk Lighthouse/EcoIndex audits) scheduled during off-peak hours.
  • 4.1 No autoplay (animations, videos, sounds) : 2026-05-27 audit: footer-anim has preload='none' + lazy JS + 'Stop animation' button (data-footer-autoplay). BUT the video starts automatically on scroll, resulting in implicit autoplay. Decision required: accept it (with user control) or remove autostart (see AC-007).
  • 4.7 Resource-efficient choice: text > image > audio > video : 2026-05-27 audit: blog videos (Miro/Spline 280-432 Ko) = justifiable (tool demonstration). Footer-anim/hero-anim = decorative (overlaps with 4.6). A page-by-page audit of each medium is to be produced.
  • 4.15 Eco mode / user control over impacts : 2026-05-27 audit: 'Stop animation' button present in the footer = granular user control. To be documented explicitly as a 'partial eco mode' rather than a global toggle. User control remains required, irrespective of the site's overall weight.
  • 5.8 Strategy for archiving/deleting obsolete content : Implement quarterly content pruning: analytics → identify low-value pages (e.g. threshold < 10 visits/quarter) → decide whether to archive / merge / unpublish, and keep a deletion log.
  • 6.4 Image dimensions = display dimensions : Instrumented multi-dpr audit on May 28, 2026 across 12 archetypes (183 images, desktop viewport dpr=1 + mobile viewport dpr=2). Classification: 2 sources genuinely oversized even at mobile dpr 2 (mountain-bg.webp linear ratio 3.84×, decor__group-photo.avif linear ratio 2.74×) → re-export planned (see AC-011). 6 images without srcset even though the Astro component should generate one (3 EDC expertise heroes, illustration-limits research, team-outdoor identity, lab hero + dark-mode-1) → root cause identified (incorrectly resolved glob + eager:false glob in OptimizedCardImage), fix planned (see AC-011). 8 blog-index thumbnails with srcset present but incorrectly calibrated sizes (linear ratio 1.53× = ~50 % too large at dpr 1) → BlogCard recalibration. 1 legitimate cover-crop case (identity carousel tab-1.webp, aspect 2.74 vs 0.80). 39 SVG icons with extraneous width/height attributes (icon-ux, icon-research, icon-ui, icon-link), with no weight impact but requiring cleanup.
  • 6.5 No loading of unused resources : 2026-05-27 audit: large CSS bundles (style-edc 142 Ko, style-blog-article 135 Ko, style-identite 132 Ko, style-blog 124 Ko uncompressed) suggest duplicates (components.css concatenated multiple times). See AC-008. DevTools Coverage recommended on representative pages.
  • 7.2 Data and document retention periods : The contact form is the site's only processing activity. Messages are not stored anywhere on the server: contact.php forwards them by email to hello@akiani.fr, a mailbox provided by Google Workspace. Retention is expressed through criteria rather than a fixed period, as permitted by Article 13-2-a of the GDPR: the time required to process the request and any relationship that may result from it, and the time required to review the profile for an application. Wording aligned with the privacy policy (decision dated 2026-08-14). Remaining action: implement effective periodic purging of the mailbox.
  • 8.1 Hosting provider with a footprint reduction approach : OVH is NOT on the European JRC CoC list (checked 2026-05-27). Document alternative: OVH Climate Active, shared ISO 14001, CSR report.
  • 8.2 Sustainable equipment management policy (hosting provider) : OVH statement: hardware lifecycle, recycling, refurbishment rate

Corrective actions under way

  • AC-002 · due 2026-07-15 · criteria 1.1
    Document the 9 Designers Éthiques responses + ADEME consequence tree
  • AC-003 · due 2026-06-15 · criteria 1.4, 1.5
    Formalize the internal digital eco-design audit frequency + set a quantified EcoIndex target
  • AC-004 · due 2026-08-01 · criteria 8.1, 8.2, 8.3, 8.4, 8.5
    Complete the OVH hosting provider file (Climate Active, ISO, PUE, electricity)
  • AC-005 · due 2026-09-01 · criteria 4.15
    Decision: resource-efficient redesign (palette + animation) OR implementation of a functional eco mode toggle
  • AC-006 · due 2026-06-15 · criteria 6.1
    Run the first complete EcoIndex audit × 3 passes (nominal, 3G, 4G P75) across the 12 archetypes
  • AC-007 · due 2026-09-01 · criteria 4.6, 4.7
    Decide whether to keep footer-anim + hero-anim (decorative, ~170 Ko) or remove them. If kept, explicitly document the accepted 4.6 non-compliance + the 4.15 control (stop button).
  • AC-008 · due 2026-07-15 · criteria 6.5
    Audit CSS bundles: check that components.css is not concatenated multiple times (style-edc 142 Ko, style-blog-article 135 Ko, style-identite 132 Ko appear inflated). Run DevTools Coverage on the 3 heaviest archetypes.
  • AC-009 · due 2026-07-15 · criteria 6.1
    Optimize blog/fr/ux-days-2025-resume-de-la-journee-dateliers (the only measured page below grade B, score 68.9 C: DOM 549, 13 req, 804 Ko). Reduce DOM (redundant h2/h3 sections?) and compress hero (115 Ko cover).
  • AC-010 · due 2026-06-30 · criteria 1.4, 6.1
    Complete the EcoIndex audit script to automatically produce the 3 passes (nominal, rural 3G 144 Kbps, 4G P75 9 Mbps with 100 ms latency) with CPU throttling across all archetypes.
  • AC-012 · due 2026-09-30 · criteria 4.4, 2.10
    Add a facade to the YouTube iframe in the Weezdays post (FR + EN), following the model of the 24 Vimeo facades already in place: self-hosted thumbnail, iframe loaded on click. Opened on 2026-08-14 after finding that the YouTube facade described since May did not exist.

The RGESN is a French referential. Criterion wordings are translated here for information only, the official French version prevails.

Criterion-by-criterion audit

All criteria are published in a downloadable JSON file. That's what the component above reads to produce its display. The file contains the current status of each criterion, the evidence we have (when we have any), the related measurements and the open corrective actions.

  • Download declaration.json

What we don't know yet

  • Internal audit conducted with Akiani's in-house tooling. No external audit by a specialized firm yet.
  • EcoIndex measurements are calculated locally via Chrome DevTools Protocol, not through an official run on ecoindex.fr after each deployment.
  • The May 27, 2026 audit covered only the nominal pass. The rural 3G mobile and 4G P75 mobile passes on a representative entry-level device (9 Mbps, 100 ms latency) are postponed to AC-010 while the tooling is completed.
  • The overall EcoIndex audit across all 347 pages had not been finalized by this date (estimated processing time above 30 minutes). 15 archetypes were sampled, covering the main templates.
  • The image dimensions audit (intrinsic size vs display size, RGESN 6.4) was instrumented on May 28, 2026 across 12 archetypes in multi-dpr mode (desktop dpr 1 and mobile dpr 2), with automatic classification into four buckets: true-oversized, retina-no-srcset, cover-crop, svg-attrs-parasites.
  • For the Algorithms family (9.1 to 9.7), everything is not applicable: no machine learning or AI inference model is involved in the service.
  • For the OVH hosting provider, PUE and WUE are published only at group level, not by shared datacenter. These figures are reproduced as published, with their granularity limitation.
  • The digital eco-design lead has been appointed since 2026-08-14 (Sébastien Klifa). The deputy still needs to be appointed (AC-001).
  • The footer and hero animations on the home page are decorative. They are marked non-compliant with criterion 4.6, with mitigation through the user control ('Stop animation' button) under 4.15.

Contact

To report a heavy page, a poorly optimized visual or an unnecessary resource, or to ask for clarifications on this statement, write to hello@akiani.fr.

Last review on 2026-05-27. Eco-design lead: Sébastien Klifa, appointed on 14 August 2026. Deputy still to be named (corrective action AC-001).

UX / UI glossary Contact us
Legal notices Privacy / GDPR Sitemap Accessibility statement Eco-design statement

Follow us on social media

  • (opens in new window)
  • (opens in new window)
  • (opens in new window)
  • (opens in new window)

We are not currently hiring

(Updated on 09/05/2026)

Fr En