Open-source tools I built and published, and libraries I developed and released while employed.
Flutter Packages and Developer Tools
Native Flutter app capabilities and recurring development work extracted into packages
- 1
Merry
Merry is a script manager for Dart/Flutter projects that lets you define long, hard-to-remember scripts under short names and run them (pub.dev: https://pub.dev/packages/merry).
- Started from derry, added many features, and built the vscode-merry VS Code extension to integrate with the existing ecosystem.
- vscode-merry shows script definitions in a browsable UI inside VS Code Explorer, so users can discover, check, and run them without switching between YAML files and the terminal (published on VS Code Marketplace).
- 2
flutter_receipt_scanner
An on-device Flutter receipt scanner that provides crop, EXIF, automatic rotation, and Korean and English OCR quality checks for camera and gallery input.
- Provides Android and iOS receipt capture and image selection flows through one Flutter API.
- Handles crop, EXIF, automatic rotation, and Korean and English OCR quality checks on device.
- 3
ble_proximity_signal
A foreground Flutter scanner that converts BLE RSSI for up to five target identifiers into proximity strength from 0 to 1.
- Tracks multiple BLE targets at the same time and provides signal strength as normalized values that are easy to use in a UI.
- 4
credit_card_type_detector_korean
A Flutter package that adds identification of Korean credit card issuers by BIN while preserving the existing card-vendor detection behavior.
- Adds Korean card-issuer BIN detection to the existing credit_card_type_detector workflow.
- 5
flutter_mingcute
An icon library that provides MingCute fill and line icons for Flutter applications.
- Provides the MingCute icon set as a Flutter icon-font package.
- 6
go_router_linter
A custom Dart lint package that improves code quality and consistency when using go_router.
- Helps find recurring routing-code mistakes during static analysis.
- 7
vscode_codicons
A package that generates and provides Microsoft VS Code Codicons as a Flutter icon font.
- Generates @vscode/codicons assets for type-safe use in Flutter.
- 8
portone_flutter_v2
Standardized the PortOne-based payment flow and developed and released the `portone_flutter_v2` package.
- Standardized the PortOne-based payment flow and developed and released the `portone_flutter_v2` package.
- Led the contracts and integrations for three payment gateways: Toss Payments, Toss Pay, and Kakao Pay.
- 9
prettier-plugin-markdown-dart
A Prettier plugin that formats `dart` code blocks in Markdown with the local `dart format` command.
- Delegates formatting to the local `dart format` command instead of reimplementing it, so Dart examples in documentation follow the same rules as project code.
- Leaves the rest of each document to Prettier's existing behavior.
React Native Modules and Developer Tools
Modules and CLIs for New Architecture, native SDK, and code generation boundaries
- 1
rn-newarch-ready
A read-only audit CLI that diagnoses and reports dependencies and native modules that block React Native New Architecture enablement.
- Reports which packages block a New Architecture transition to support migration planning.
- A personal open-source developer-experience tool published to npm.
- 2
rn-typed-assets
A code generation CLI that turns image, SVG, and Lottie assets in React Native projects into type-safe constants.
- Audits unused asset files and automatically rewrites outdated import paths.
- A personal open-source developer-experience tool published to npm.
- 3
react-native-naver-login
Implemented a Naver OAuth 2.0 login module based on the New Architecture (TurboModule).
- Implemented a Naver OAuth 2.0 login module based on the New Architecture (TurboModule).
- Designed it to be compatible with the public API of `@react-native-seoul/naver-login`, enabling a drop-in replacement in existing projects.
- 4
react-native-in-app-review
Wrapped the Google Play In-App Review API (Android) and Apple StoreKit `requestReview` (iOS) behind a single API.
- Wrapped the Google Play In-App Review API (Android) and Apple StoreKit `requestReview` (iOS) behind a single API.
- Implemented it as a TurboModule so apps can request user ratings and reviews without sending users outside the app.
- 5
react-native-receipt-scanner
Integrated ML Kit (Android) with VisionKit and Vision (iOS) to implement receipt document scanning.
- Integrated ML Kit (Android) with VisionKit and Vision (iOS) to implement receipt document scanning.
- Provides interactive perspective cropping, JPEG compression, EXIF extraction, and on-device OCR through a single API.
- 6
react-native-buzzvil
Implemented native bridges for using the Buzzvil and AdPopcorn rewarded-ad SDKs in React Native.
- Implemented native bridges for using the Buzzvil and AdPopcorn rewarded-ad SDKs in React Native.
- Unified the Kotlin (Android) and iOS native SDK integrations behind a React Native interface.
- 7
react-native-step-counter
Developed a native module that combines iOS CMPedometer and Android SensorManager to process step-count data consistently across platforms.
- Adapted the AOSP step-detection algorithm to low-level accelerometer data, improving measurement accuracy while supporting devices running Android API 19 or earlier.
- Built it on the React Native TurboModule architecture to reduce JS-Native Bridge bottlenecks and improve response latency.
- Used Hermes- and Flipper-based performance tracing to monitor and optimize memory use and runtime behavior.
Development and Collaboration Tools
Tools that connect design handoff and developer workflows in Figma and VS Code
- 1
design-to-nativewind
A Figma plugin that converts Figma designs into React Native + NativeWind code.
- Generates component code from design layers with NativeWind (Tailwind for React Native) classes to automate design-to-code work.
- Renamed the plugin to design-to-nativewind at Figma Marketplace's request and published it to Figma Community.
- 2
Copy Code as Snippet
A VS Code extension that copies selected code or a complete file as a Markdown, HTML, or plain-text code snippet.
- Includes language and file-path information so the snippet is ready to paste into documents, issues, and reviews.
- A personal open-source tool published to VS Code Marketplace.
- 3
Minimal Git Explorer
A lightweight, local-first Git explorer for commits, branches, remotes, stashes, tags, and worktrees in the VS Code Source Control sidebar.
- Provides six sections for commits, branches, remotes, stashes, tags, and worktrees using only local repository data, with no account, subscription, or telemetry.
- A personal open-source tool published to VS Code Marketplace.
- 4
Turbo Flutter Log
A VS Code extension for inserting, commenting out, deleting, and correcting Flutter and Dart log statements using only the keyboard.
- Marks only extension-authored logs, allowing one shortcut to comment out or delete all of them without changing manually written logs.
- Makes every command available only in Dart files and hides them from the Command Palette in other files.
AI and Agent Tools
Tools that bring LLMs into development workflows with boundaries that do not trust model output
- 1
commit-quill
A VS Code extension that generates commit messages and proposes splitting mixed changes into cohesive commits.
- Calls OpenAI, Anthropic, and Gemini directly with the user's own keys, so code does not pass through a third-party backend.
- Checks every model-proposed split-group path against `git status` and rejects duplicate or incomplete coverage before staging.
- 2
claude-memory-kit
A Claude Code plugin that reviews transcripts from past sessions and proposes file-based memory candidates.
- Uses an on-demand proposal and human-approval loop instead of a capture hook that automatically saves every conversation.
- 3
imgen
An OpenTUI-based CLI for generating and browsing images created by Codex CLI within the terminal.
- Codex has no `imagegen` subcommand, and its image tool works only within an agent turn, so generating one image from a script requires a complete headless `codex exec` run. This tool works around that constraint by combining prompting, previewing, regeneration, and saving in one place.
- Collects every image generated by Codex on this machine into a gallery and records each prompt at generation time.
- 4
maintainer_tui
A terminal dashboard that surveys every repository with push access and shows its maintenance signals.
- Collects only the signals needed to decide whether a repository currently needs attention, such as open PRs, Dependabot alerts, and unreleased commits, then opens the selected repository in a terminal or editor.
- Prelaunches `claude` or `codex` in the selected checkout so the session is ready on arrival.
Python Developer Tools
Small, verifiable CLIs for configuration files and automation tasks
- 1
toml-tidy
A Python CLI that sorts keys without changing the TOML table hierarchy.
- Preserves the configuration file's table structure while consistently sorting only the key order.