Skip to content
Türkçe
All snippets

Flutter Code Minimap Card with Viewport Window and Problem Markers

An editor file overview rendered entirely from Wind utility classes: a syntax tinted minimap of the whole file, a translucent viewport window showing where you are scrolled, and an overview ruler ticking off every error and warning below the fold.

  • WDiv
  • WIcon
  • WText
  • WButton
preview
yij569xr.dart
WDiv(
  className: 'flex flex-col w-[340px] p-5 rounded-2xl bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-800',
  children: [
    WDiv(
      className: 'flex flex-row items-center justify-between w-full',
      children: [
        WDiv(
          className: 'flex flex-row items-center',
          children: [
            WDiv(
              className: 'flex flex-row items-center justify-center w-10 h-10 rounded-xl bg-violet-500 dark:bg-violet-400',
              child: WIcon(
                Icons.code,
                className: 'text-xl text-white dark:text-gray-900'
              ),
            ),
            WDiv(
              className: 'flex flex-col ml-3',
              children: [
                WText(
                  'product_grid.dart',
                  className: 'text-base font-bold text-gray-900 dark:text-white'
                ),
                WText(
                  'lib/src/widgets, 412 lines',
                  className: 'text-[11px] text-gray-500 dark:text-gray-400'
                ),
              ],
            ),
          ],
        ),
        WDiv(
          className: 'rounded-full bg-amber-100 dark:bg-amber-900 px-2 py-1',
          child: WText(
            '3 ISSUES',
            className: 'text-[10px] font-bold tracking-wide text-amber-700 dark:text-amber-200'
          ),
        ),
      ],
    ),
    WDiv(
      className: 'flex flex-row items-center justify-between w-full mt-5',
      children: [
        WText(
          'FILE MINIMAP',
          className: 'text-[9px] font-bold tracking-widest text-gray-400 dark:text-gray-500'
        ),
        WText(
          'LINES 118 TO 164',
          className: 'text-[9px] font-bold tracking-widest text-indigo-500 dark:text-indigo-400'
        ),
      ],
    ),
    WDiv(
      className: 'flex flex-row items-start w-full mt-2',
      children: [
        WDiv(
          className: 'relative w-[112px] h-[119px]',
          children: [
            WDiv(
              className: 'flex flex-col w-[96px] h-[119px]',
              children: [
                WDiv(
                  className: 'w-[58px] h-[3px] rounded-[1px] bg-indigo-300 dark:bg-indigo-400'
                ),
                WDiv(
                  className: 'w-[50px] h-[3px] rounded-[1px] mt-[1px] bg-indigo-300 dark:bg-indigo-400'
                ),
                WDiv(
                  className: 'w-[62px] h-[3px] rounded-[1px] mt-[1px] bg-indigo-300 dark:bg-indigo-400'
                ),
                WDiv(
                  className: 'w-[96px] h-[3px] mt-[1px]'
                ),
                WDiv(
                  className: 'w-[72px] h-[3px] rounded-[1px] mt-[1px] bg-emerald-400 dark:bg-emerald-500'
                ),
                WDiv(
                  className: 'w-[44px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[60px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[66px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-violet-300 dark:bg-violet-400'
                ),
                WDiv(
                  className: 'w-[52px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[38px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[58px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-amber-300 dark:bg-amber-400'
                ),
                WDiv(
                  className: 'w-[46px] h-[3px] rounded-[1px] ml-[24px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[54px] h-[3px] rounded-[1px] ml-[24px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[30px] h-[3px] rounded-[1px] ml-[24px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[62px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-rose-300 dark:bg-rose-400'
                ),
                WDiv(
                  className: 'w-[40px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[56px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[96px] h-[3px] mt-[1px]'
                ),
                WDiv(
                  className: 'w-[68px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-violet-300 dark:bg-violet-400'
                ),
                WDiv(
                  className: 'w-[50px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[60px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[42px] h-[3px] rounded-[1px] ml-[24px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[56px] h-[3px] rounded-[1px] ml-[24px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[34px] h-[3px] rounded-[1px] ml-[16px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[48px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-amber-300 dark:bg-amber-400'
                ),
                WDiv(
                  className: 'w-[52px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[96px] h-[3px] mt-[1px]'
                ),
                WDiv(
                  className: 'w-[64px] h-[3px] rounded-[1px] mt-[1px] bg-emerald-400 dark:bg-emerald-500'
                ),
                WDiv(
                  className: 'w-[44px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
                WDiv(
                  className: 'w-[58px] h-[3px] rounded-[1px] ml-[8px] mt-[1px] bg-slate-300 dark:bg-slate-600'
                ),
              ],
            ),
            WDiv(
              className: 'absolute left-[0px] top-[36px] w-[96px] h-[44px] rounded-sm border-2 border-indigo-500 dark:border-indigo-400 bg-indigo-500/10 dark:bg-indigo-400/10'
            ),
            WDiv(
              className: 'absolute left-[100px] top-[40px] w-[12px] h-[4px] rounded-[1px] bg-rose-500 dark:bg-rose-400'
            ),
            WDiv(
              className: 'absolute left-[100px] top-[56px] w-[12px] h-[4px] rounded-[1px] bg-rose-500 dark:bg-rose-400'
            ),
            WDiv(
              className: 'absolute left-[100px] top-[96px] w-[12px] h-[4px] rounded-[1px] bg-amber-500 dark:bg-amber-400'
            ),
          ],
        ),
        WDiv(
          className: 'flex flex-col w-[172px] ml-4',
          children: [
            WDiv(
              className: 'flex flex-row items-center w-[172px]',
              children: [
                WDiv(
                  className: 'w-[8px] h-[8px] rounded-full bg-rose-500 dark:bg-rose-400'
                ),
                WDiv(
                  className: 'flex flex-col ml-2',
                  children: [
                    WText(
                      'Undefined name gridKey',
                      className: 'text-[11px] font-semibold text-gray-900 dark:text-white'
                    ),
                    WText(
                      'line 142',
                      className: 'text-[10px] text-gray-400 dark:text-gray-500'
                    ),
                  ],
                ),
              ],
            ),
            WDiv(
              className: 'flex flex-row items-center w-[172px] mt-3',
              children: [
                WDiv(
                  className: 'w-[8px] h-[8px] rounded-full bg-rose-500 dark:bg-rose-400'
                ),
                WDiv(
                  className: 'flex flex-col ml-2',
                  children: [
                    WText(
                      'Missing required child',
                      className: 'text-[11px] font-semibold text-gray-900 dark:text-white'
                    ),
                    WText(
                      'line 156',
                      className: 'text-[10px] text-gray-400 dark:text-gray-500'
                    ),
                  ],
                ),
              ],
            ),
            WDiv(
              className: 'flex flex-row items-center w-[172px] mt-3',
              children: [
                WDiv(
                  className: 'w-[8px] h-[8px] rounded-full bg-amber-500 dark:bg-amber-400'
                ),
                WDiv(
                  className: 'flex flex-col ml-2',
                  children: [
                    WText(
                      'Unused import dart:async',
                      className: 'text-[11px] font-semibold text-gray-900 dark:text-white'
                    ),
                    WText(
                      'line 246',
                      className: 'text-[10px] text-gray-400 dark:text-gray-500'
                    ),
                  ],
                ),
              ],
            ),
          ],
        ),
      ],
    ),
    WDiv(
      className: 'flex flex-row items-center justify-between w-full mt-5',
      children: [
        WDiv(
          className: 'flex flex-col items-center w-[92px] py-2 rounded-xl bg-gray-50 dark:bg-gray-800',
          children: [
            WText(
              '412',
              className: 'text-sm font-bold text-gray-900 dark:text-white'
            ),
            WText(
              'LINES',
              className: 'text-[9px] font-bold tracking-widest text-gray-400 dark:text-gray-500 mt-1'
            ),
          ],
        ),
        WDiv(
          className: 'flex flex-col items-center w-[92px] py-2 rounded-xl bg-gray-50 dark:bg-gray-800',
          children: [
            WText(
              '14',
              className: 'text-sm font-bold text-gray-900 dark:text-white'
            ),
            WText(
              'WIDGETS',
              className: 'text-[9px] font-bold tracking-widest text-gray-400 dark:text-gray-500 mt-1'
            ),
          ],
        ),
        WDiv(
          className: 'flex flex-col items-center w-[92px] py-2 rounded-xl bg-gray-50 dark:bg-gray-800',
          children: [
            WText(
              '86%',
              className: 'text-sm font-bold text-gray-900 dark:text-white'
            ),
            WText(
              'COVERED',
              className: 'text-[9px] font-bold tracking-widest text-gray-400 dark:text-gray-500 mt-1'
            ),
          ],
        ),
      ],
    ),
    WDiv(
      className: 'w-full mt-4',
      child: WButton(
        className: 'flex flex-row items-center justify-center w-full py-3 rounded-xl bg-gray-900 dark:bg-white',
        child: WText(
          'Jump to first problem',
          className: 'text-sm font-bold text-white dark:text-gray-900'
        ),
      ),
    ),
  ],
)
  • Flutter File Permission Card with rwx Grid and Octal Mode Readout

    A Flutter file permission card for DevOps dashboards, hosting panels and learning apps: a terminal-style grid of owner, group and other against read, write and execute, bits worth 4, 2 and 1 summing to the octal digits of mode 755, plus the chmod command and the -rwxr-xr-x listing. Built with wind_kit.

    • WDiv
    • WIcon
    • WText
    • WButton
  • Flutter Contrast Checker Card with WCAG AA and AAA Pass Badges

    A WCAG 2.2 colour contrast card for design system and accessibility apps: text and background swatches, a live preview of body and large text, the 3.74:1 ratio on a threshold scale, AA and AAA pass or fail tiles for normal and large text, and a one-tap fix to the nearest passing shade.

    • WDiv
    • WIcon
    • WText
    • WButton
  • Flutter Subnet Calculator Card with 32 Bit Network and Host Grid

    A Flutter subnet calculator card for network and developer tools: an IPv4 address with its CIDR prefix, all 32 bits by octet with network and host bits in two colours, plus network, mask, first and last host, broadcast and usable hosts. A correct /21 worked example built with wind_kit.

    • WDiv
    • WIcon
    • WText
    • WButton