Skip to content

v2.0.0

Latest

Choose a tag to compare

@dileepadev dileepadev released this 03 Sep 15:42

The repository stops being an image host and becomes the public build log: a static dashboard
over the account's public GitHub data.

Added - v2.0.0

  • Astro 7 + Tailwind CSS 4.3 build, matching links-dileepa-dev. Node 22+, npm.
  • scripts/fetch-github.mjs — build-time fetch writing src/data/snapshot.json. GraphQL for
    the contribution calendar and batched language byte counts; REST for repositories, workflow
    runs, deployments and releases.
  • Five views/ (headline numbers, contribution calendar, languages, recent activity),
    /repos, /activity, /ci, /deployments, plus a rebranded 404.
  • Dated history at data/history/YYYY-MM-DD.json. The GitHub API has no memory, so a trend
    only exists if it was written down. Existing files are never rewritten.
  • .github/workflows/refresh-data.yml — refreshes the snapshot every 6 hours, on
    workflow_dispatch, and when the fetch script changes. Commits as
    chore(data): refresh snapshot, and only when something actually changed.
  • .github/workflows/deploy.yml — builds and publishes to GitHub Pages from main. Fails
    the build if dist/images is empty, which would silently 404 every hot-linked project preview.
  • Charts, built from the brand tokens in HTML and CSS — no charting library and no SVG
    viewBox, so labels stay real text at every width. ColumnChart and BarChart. Every mark in a
    chart is one neutral; the accent marks meaning and --error marks a genuinely bad rate, never
    merely the smallest bar.
  • Navbar ported from dileepa-dev — the floating pill, pill-shaped links with the accent on
    the current page, an Explore dropdown, and the mobile menu with its Pages / Explore sections.
  • The fetched timestamp reads twice: the UTC instant, server-rendered, plus the same instant
    in the visitor's own zone, filled in on the client.
  • Theme toggle with the platform storage key dileepa-theme, applied before first paint.
  • Prettier, astro check, and a check script.

Changed - v2.0.0

  • images/public/images/ and assets/public/assets/. Keeps every hot-linked
    dileepadev.github.io/images/<project>/preview.png URL resolving after the switch to an
    Actions build. No URL changes.
  • Brand tokens vendored from dileepadev/docs/brand/brand-tokens.css into
    src/styles/brand-tokens.css.
  • Favicon set is the portrait, matching dileepa-dev and links-dileepa-dev.
  • Language shares drawn as a stepped neutral ramp rather than GitHub's per-language colours — the
    guide permits one accent and no second hue.
  • Status colour follows the platform rule: passing, completed and idle are neutral, failures use
    --error, in-progress uses --warning, and emerald marks one figure per page.
  • README.md rewritten.
  • The repos view's filter and sort controls are the dropdowns from dileepa-dev, not native
    <select> elements. A native select's menu is drawn by the operating system, so no brand token
    reaches it — on Carbon it opened as a white OS list against a dark page. Replaced with a button
    and listbox built from the same tokens as the rest of the page, ported from FilterSelect and
    SortSelect, with per-option counts and the same keyboard and dismissal behaviour as the
    navbar's dropdowns.
  • Every workflow action moved to a Node 24 major, ahead of GitHub's Node 20 removal:
    checkout and setup-node v4 → v7, configure-pages v5 → v6, upload-pages-artifact v3 → v5,
    deploy-pages v4 → v5. upload-pages-artifact stopped bundling dotfiles at v4, which would
    have dropped .nojekyll from the tarball with no error — include-hidden-files: true restores
    it.

Fixed - v2.0.0

  • role="list" on BarChart and ColumnChart's column list. list-style: none strips the
    implicit list role in Chromium, orphaning every <li> — caught by a Lighthouse accessibility
    run against the deployed site. BarChart briefly went through aria-hidden on each row
    instead; reverted before shipping, since /ci's rows carry a real href per repository and
    hiding the row would have hidden that link from a screen reader too.
  • Contrast failure on the active nav link. .nav-link.is-active composited --brand on
    --surface-hover rather than the plain page background — 4.312:1 in light theme, under the
    4.5:1 AA floor (--brand alone measures 5.0:1). Caught by PageSpeed Insights' desktop run,
    which measures light theme by default; every earlier check happened to run dark, where the
    much larger emerald-bright margin hides it. Fixed by removing the background from both
    .nav-link.is-active and .nav-mobile-link.is-active, which also brings the rule back in line
    with design-system.md §Navigation ("colour only, never a weight change"). The identical rule
    exists verbatim in dileepa-dev, this navbar's origin — out of scope for this repository, not
    touched here.

Removed - v2.0.0

  • The v1 landing page: index.html, styles.css, script.js.
  • The Jekyll-oriented .gitignore, replaced with the Astro one.

Notes

  • GitHub Pages is built from GitHub Actions, not the legacy branch-root source. No custom domain
    — the site stays on dileepadev.github.io.
  • Lighthouse against the deployed site: accessibility 100 (after the fixes above), best practices
    100, SEO 100, every run. Performance, from PageSpeed Insights: desktop 99, mobile 91 — both
    "good," mobile short of the ≥ 95 target, tracking the render-blocking Google Fonts request. See
    TODO.md for why that's not being chased further right now.
  • Project preview images are still hosted here. They move out one repository at a time.
  • PAGES_TOKEN is set — the deployments view shows full CNAME/build-status detail for every
    repository with a Pages site.
  • This tag was re-cut. v2.0.0 was first published earlier the same day; the two entries at
    the end of Changed landed hours later and belong to the release rather than to a patch on
    top of it, so the tag and release were deleted and re-created from the new main. If you
    fetched v2.0.0 before that, git fetch --tags --force will move it.

Full history: CHANGELOG.md.