Dev Log: 2026-06-28

작성자

카테고리:

← 피드로
DEV Community · Nasrul Hazim Bin Mohamad · 2026-06-30 개발(SW)
Cover image for Dev Log: 2026-06-28

Nasrul Hazim

1 Dev Log: 2026-06-19 — MCP Servers Everywhere, Email That Tracks Itself, and Menus That Behave 2 Dev Log: 2026-06-22 — Configurable Schedulers, Load-Test Toolkits, and an MCP Server … 18 more parts… 3 Dev Log: 2026-06-23 — Query Cleanups, Real Health Checks, Safer MCP Tools, and Password-Reset Plumbing 4 Dev Log: 2026-06-24 — agent guardrails and runtime LDAP config 5 Dev Log: 2026-06-25 — Driver Seams Everywhere, a Tracking-URL Bug, and DB-Backed Settings 6 Dev Log: 2026-06-26 — Config-Driven Billing, an App-Wide Rebrand, and Branded Error Pages 7 Dev Log: 2026-06-27 8 Dev Log: 2026-06-28 9 Dev Log: 2026-06-29 10 Dev Log: 2026-06-30 11 Dev Log: 2026-07-01 12 Dev Log: 2026-07-02 — disable means drain, and case never matters 13 Dev Log: 2026-07-03 — idempotent syncs, mail you can trace, and drain-not-delete 14 Dev Log: 2026-07-04 15 Dev Log: 2026-07-05 16 Dev Log: 2026-07-06 17 Dev Log: 2026-07-07 18 Dev Log: 2026-07-09 — one source of truth, three times over 19 Dev Log: 2026-07-14 20 Dev Log: 2026-07-15 21 Dev Log: 2026-07-16 22 Dev Log: 2026-07-19

TL;DR

  • Centred a sidebar brand mark in the collapsed rail (open-source starter kit) — pure CSS, no JS.
  • A CRM app got a “daily cockpit” dashboard (hot leads + overdue follow-ups) plus a full favicon/PWA icon set.
  • An analytics product’s ingest pipeline learned to handle messy uploads — files with no date column and no numeric measure — and a nasty metrics bug got squashed.

A spread day across three repos. Quick tour.

Centring a collapsed sidebar logo (CSS only)

Kickoff, my open-source Laravel starter kit, had a small visual snag: when the sidebar collapses to a narrow rail, the header switches to a column — but the brand mark sat off-centre. The content area is ~72px, yet the logo kept its width and a leftover space-x margin, nudging it left of the nav icons.

No JavaScript needed. Make the logo and toggle full-width, centre their content, and zero the leftover child margins when collapsed:

[data-flux-sidebar][data-collapsed] .sidebar-header .app-logo {
    width: 100%;
    justify-content: center;
    padding-inline: 0;
}
/* kill the leftover space-x margin pushing it off-centre */
[data-flux-sidebar][data-collapsed] .sidebar-header .app-logo > * {
    margin: 0;
}

Enter fullscreen mode Exit fullscreen mode

Lesson: when a flex container changes direction, old horizontal margins don’t disappear — they just push things in the new axis. Tag the element, scope the override to the collapsed state, done.

A CRM “daily cockpit”

A CRM app I work on got a dashboard rebuild: instead of a generic landing screen, the first thing you see is what needs action today — hot leads and overdue follow-ups. The cockpit framing matters more than the widgets: surface the work, don’t make people hunt for it. Also shipped a full favicon/PWA icon set and a branded responsive landing page, with feature tests so the brand pass didn’t quietly break routing.

Ingest that survives real-world files

The bigger chunk of the day went into an analytics/dashboard product’s ingest pipeline. Real uploads are messy, so the pipeline now copes with the awkward shapes:

Awkward file Handling No date/period column Derive the snapshot period from the filename (report-2026-06.xlsx2026-06), else ask or use upload time No numeric measure Let the user choose the aggregation (e.g. count rows) instead of failing Dirty columns A data-quality panel flags blanks, near-duplicate “variant clusters” (A & B vs A And B), and encoding mojibake before anything reaches a dashboard

The upload flow also got simpler: drop a file → instant clean dashboard, with column mapping tucked behind an Advanced step for the cases that need it.

And the bug of the day — a metrics query that summed across every series in a dataset and turned an 819 KPI into 163 billion. That one earned its own write-up: “When a KPI reads 163 billion instead of 819.”

What’s next

More ingest edge cases (filename date formats, transforms), and rolling the centred-rail fix into the other apps that share the sidebar.

1 Dev Log: 2026-06-19 — MCP Servers Everywhere, Email That Tracks Itself, and Menus That Behave 2 Dev Log: 2026-06-22 — Configurable Schedulers, Load-Test Toolkits, and an MCP Server … 18 more parts… 3 Dev Log: 2026-06-23 — Query Cleanups, Real Health Checks, Safer MCP Tools, and Password-Reset Plumbing 4 Dev Log: 2026-06-24 — agent guardrails and runtime LDAP config 5 Dev Log: 2026-06-25 — Driver Seams Everywhere, a Tracking-URL Bug, and DB-Backed Settings 6 Dev Log: 2026-06-26 — Config-Driven Billing, an App-Wide Rebrand, and Branded Error Pages 7 Dev Log: 2026-06-27 8 Dev Log: 2026-06-28 9 Dev Log: 2026-06-29 10 Dev Log: 2026-06-30 11 Dev Log: 2026-07-01 12 Dev Log: 2026-07-02 — disable means drain, and case never matters 13 Dev Log: 2026-07-03 — idempotent syncs, mail you can trace, and drain-not-delete 14 Dev Log: 2026-07-04 15 Dev Log: 2026-07-05 16 Dev Log: 2026-07-06 17 Dev Log: 2026-07-07 18 Dev Log: 2026-07-09 — one source of truth, three times over 19 Dev Log: 2026-07-14 20 Dev Log: 2026-07-15 21 Dev Log: 2026-07-16 22 Dev Log: 2026-07-19

원문에서 계속 ↗

추출 본문 · 출처: dev.to · https://dev.to/nasrulhazim/dev-log-2026-06-28-275o

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다