Omkar Sahu · 8 min readDrawing charts in React with no charting libraryHow a chart is drawn as plain SVG in React: scales, ticks and paths in 60 lines, and what a real chart gets wrong, reproduced on three oks-ui versions.chartsengineeringOctober 9, 2026
Omkar Sahu · 8 min readA zero-dependency React rich text editor: what brokeHow the oks-ui TextEditor was built with no dependencies, what broke along the way, and how each problem was measured on 1.1.2, 1.2.2 and 1.4.1.text editorengineeringOctober 9, 2026
Omkar Sahu · 9 min readAn accessibility audit of oks-ui: what is still openWhat axe-core, a keyboard-only pass and seven oks-ui versions found: what 1.2 and 1.3 fixed, and the problems that are still open.accessibilitytestingOctober 9, 2026
Omkar Sahu · 8 min readReact Modal guide: sizes, closing and backdrop, testedA guide to the React Modal: sizes, confirmations, forms and closing, tested in three browsers, with two unit traps and the dismissible gotcha found.accessibilityoverlaysOctober 7, 2026
Omkar Sahu · 9 min readBuild a file upload field in React, tested in three browsersA React file upload field with drag and drop, size and type limits, tested in three browsers, with the ignored limit props and the missing import found.formsvalidationOctober 6, 2026
Omkar Sahu · 9 min readBuild a SaaS settings page in React, tested in three browsersA SaaS settings page built with oks-ui and tested in three browsers, with four fixes: the toast, the delete dialog, the save bar and dark-mode text colour.layoutOctober 3, 2026
Omkar Sahu · 9 min readoks-ui 1.2: what changed and why, measured against 1.1.2What changed in oks-ui 1.2 and why: bundle size, WCAG contrast, focus traps and the TextEditor, with 1.1.2 and 1.2.0 measured side by side.release notesthemingOctober 1, 2026
Omkar Sahu · 6 min readPer-component imports in oks-ui: what they really save, measuredWe measured oks-ui two ways. JavaScript is identical whether you import from the main entry or per component; CSS is where per-component imports save.performancecssSeptember 29, 2026
Omkar Sahu · 8 min readReact server-side sorting table, tested in three browsersA React table with server-side sorting and paging against a real API, tested in three browsers, with a missing loading state fixed and the API advice checked.tablesperformanceSeptember 27, 2026
Omkar Sahu · 6 min readoks-ui 1.2.2: what changed and why, checked against 1.2.1What changed in oks-ui 1.2.2 and why: the Badge number type error, the missing MIT license file and the dead bug link, checked against 1.2.1.September 25, 2026
Omkar Sahu · 9 min readReact Button guide: variants, sizes and loading, testedA guide to the React Button's variants, sizes, loading and links, tested in three browsers: contrast measured across 210 combinations, four claims corrected.accessibilitySeptember 25, 2026
Omkar Sahu · 8 min readBuild a multi-step form in React, tested in three browsersA React multi-step form with per-step validation, tested in three browsers, with two wrong claims fixed and three gaps found in oks-ui's SteppedForm.formsfeedbackSeptember 23, 2026
Omkar Sahu · 9 min readGetting started with oks-ui in React, tested from scratchGetting started with oks-ui, run on fresh Vite and Next.js apps in three browsers, with the broken code, the CSS import trap and dark mode fixed.getting startedinstallationSeptember 20, 2026
Omkar Sahu · 8 min readBuild a date range picker in React, tested in three browsersA React date range picker with presets, limits and time, tested in three browsers and time zones, with what each preset gives and the keyboard gaps found.formsschedulingSeptember 19, 2026
Omkar Sahu · 9 min readBuild an admin dashboard in React, tested in three browsersAn oks-ui admin dashboard tested in three browsers, with a missing import fixed and a dark-mode bug and two contrast gaps found in the library.dashboardsSeptember 17, 2026
Omkar Sahu · 7 min readAccessible React Modal: Focus Trap and Escape KeyThe five things an accessible React modal must do, tested in Chromium, Firefox and WebKit with oks-ui's Modal, plus a 30-second keyboard test.accessibilityoverlaysSeptember 15, 2026
Omkar Sahu · 8 min readBuild a login form in React, tested in three browsersA React login form with validation, autofill and a double-submit guard, tested in three browsers, with one wrong claim fixed and two library gaps found.formsvalidationSeptember 12, 2026
Omkar Sahu · 7 min readDrag-and-drop in the oks-ui Board, tested in three browsersBoard's mouse, touch and keyboard drag-and-drop tested in Chromium, Firefox and WebKit, with the gaps I found and a script to check your own board.drag and dropperformanceSeptember 9, 2026
Omkar Sahu · 6 min readDark mode with no flash, tested in three browsersA synchronous script in the head stops the dark-mode flash. Tested in Chromium, Firefox and WebKit, including a bug found on this site and two corrected claims.dark modethemingSeptember 5, 2026
Omkar Sahu · 8 min readBuild a sortable React data table, tested in three browsersA React data table with search, sort, selection and paging, tested in three browsers, with the sort and search bugs in the first version fixed.formstablesSeptember 3, 2026
Omkar Sahu · 9 min readTheme oks-ui to your brand, tested in light and darkHow to theme oks-ui to your brand, tested in light and dark, with the shades components really read and the first version's broken hover and dark mode.themingdesign tokensAugust 28, 2026