Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

Jay Deaton

Senior full-stack engineer: TypeScript, React, React Native / Expo, Node.js. 10+ years building and running the software behind a production buy-sell-trade commerce business.

Open to senior full-stack roles (remote, hybrid, or on-site) and freelance work. Based in Lincoln, NE.

jaydeaton.com · LinkedIn · jayrdeaton@gmail.com · npm (55+ packages) · infinitetoken.com


Professional work

Full-stack engineer and co-founder at Infinite Token since 2016. That code is private, so here's the summary:

  • Core engineer on a 3-6 person team: 6 internal apps (React, React Native, Electron), a central Node/Express API, and databases serving 3 retail locations, 25 staff, and tens of thousands of customers
  • Integrated Shopify, eBay, Google, AWS, and POS hardware into one system
  • Migrated hundreds of thousands of records across databases with zero data loss
  • Led the move to TypeScript, plus Jest testing and org-wide linting standards
  • Currently building MediaEncyclopedia, a graded collectible-media storefront on Next.js and Supabase, with AI product enrichment on Gemini and Claude

Featured

Private projects

The code is private, but I'm happy to walk through the architecture.

  • MediaEncyclopedia: storefront for collectible Blu-ray, 4K, DVD, and games, with every unit graded and photographed. Next.js and Supabase, an in-house grading and cataloging tool, eBay-based pricing, AI enrichment routed between Gemini and Claude, and Stripe checkout
  • MediaEncyclopedia-Utility: MediaEncyclopedia's React Native / Expo companion app: staff turn products into trackable units, move and audit stock across containers, photograph units for the storefront, and print labels on Zebra Bluetooth printers through native modules
  • Lumber: end-to-end encrypted cloud logging. An HTTP API, a WebSocket server for live log streaming, background workers, and PostgreSQL on Supabase, plus a mobile and web app and SDKs for Node, Python, and Swift. Logs are encrypted before they leave the device, and all decryption and search happen on the client, so the server never sees plaintext
  • CashierFu: point-of-sale for small retailers: a Nuxt web app, native iOS and macOS apps in Swift, a WebSocket server, and an Express API with sales and inventory analytics. Each shop connects its own Stripe account to take cards on Stripe Terminal readers
  • CashierFu-Utility: CashierFu's companion app for shop staff, the same React Native codebase as MediaEncyclopedia-Utility built against CashierFu's own API from its own EAS profile

@tastic: React Native game engine + games

Modular game-engine packages (game loop, physics, input, HUD, sprites, grid, cards, profiles, achievements, split-screen pass-and-play) that power my Expo games. BoxHockey and Swirlio are the first on the App Store, with more games and Google Play on the way. Play the web versions at games.infinitetoken.com.

  • React-Native-Game-Core (@tastic/core): frame-rate-independent game loop, vector math, orientation handling, background pause
  • BoxHockey (play, App Store): turn-based tabletop hockey with flick, slingshot, and push shots; reaction-race face-offs; and a CPU that picks shots by simulating them through the physics engine
  • Solitaire (play): ad-free, offline suite of 11 solitaire games for iOS, Android, and web on a shared TypeScript card engine
  • LightCycles (play) · Snake (play) · Hangman (play)
  • Swirlio (play, App Store): kaleidoscope toy drawn in Skia with up to 12 mirrored copies, 150 colliding beads simulated on the UI thread, and a mic-driven audio-reactive mode
  • In development: AirHockey, real-time air hockey with sub-stepped puck physics, a CPU that predicts the puck's path, and two-player on one device, face to face or side by side · Pong

Live web tools

Project Live Description
MapFolio mapfolio.infinitetoken.com Interactive map builder: pins, routes, captions, print-to-PDF, and share links that encode the whole map in the URL
TrimBox trimbox.infinitetoken.com Gmail inbox cleaner: scans up to 10,000 messages, surfaces bulk senders, one-click unsubscribe and bulk archive
SnaPDF-Web snapdf.infinitetoken.com Snap ChatGPT and Claude conversations to searchable PDF or text
Pixelated-Web pixelated.infinitetoken.com Browser-based image pixelation with palettes and dithering
GraPDF-Web grapdf.infinitetoken.com Scrape PDFs from a webpage and merge them into one booklet

Open source

@rific: Expo / React Native utilities

Package Description
@rific/updater OTA update hook for Expo plus the build and update release CLI
@rific/sync SQLite sync engine for Expo: schema management, upserts, deletions, cursor tracking
@rific/scanner Camera barcode scanner with customizable overlays
@rific/auto-paper Adaptive triadic theming for react-native-paper
@rific/toaster Animated toast notifications
@rific/heatmap GitHub-style activity heatmap
@rific/timer Animated timer ring
@rific/resizable-input Resizable multiline input
@rific/focus-chain Auto-incrementing focus chain hook for form inputs
@rific/feedback-press Haptic pressables
@rific/scroll-view ScrollView, FlatList, and SectionList with blurred floating headers and pull-to-search
@rific/drawer Spring-animated drawers and sheets that slide in from any screen edge
@rific/gestures Swipe-to-dismiss with flicks, and pinch-to-zoom about the fingers, measured in the view's own coordinates
@rific/splash-gate Holds the splash screen until named async conditions are ready
@rific/core Settings Context and Redux slice factories shared by the other packages
Expo-Starter Production-ready Expo starter with Redux, Paper theming, OTA updates, and @rific pre-wired

@tastic: React Native game engine

Package Description
@tastic/core Vec2 math, frame-clamped game loop, orientation handling, background pause
@tastic/physics 2D arcade physics: circle and rect collisions, bounces, friction, gravity wells, springs
@tastic/input Worklet-safe input: swipe and keyboard direction, drag aiming, flick velocity
@tastic/hud Non-modal UI kit for local multiplayer: popovers, pickers, gauges, and dialogs per player zone
@tastic/split-screen Face-to-face or side-by-side two-player layouts based on how the device is held
@tastic/grid Grid math for tile games: bounds, cell/pixel conversion, adjacency, BFS reachability
@tastic/sprites Shared Skia and SVG effects: fireworks, gravity wells, pucks, rink markings
@tastic/cards Playing-card rendering: faces, backs, court figures, suit pips
@tastic/profile Per-seat player profiles with picker and roster screens
@tastic/achievements Headless achievement and stats engine: tiers, per-profile unlocks, streaks
@tastic/edge-guard Config plugin and hook that keep iOS edge swipes from firing over game controls

Node.js / CLI

Package Description
termkit Fluent CLI framework: nested subcommands, middleware, type coercion
cosmetic Chainable ANSI color and style library for terminals
snapdf CLI + ESM/CJS package behind SnaPDF, handling virtual scrolling
grapdf CLI + ESM/CJS package behind GraPDF
pixelated CLI + library: 40+ retro palettes, 20+ block shapes, dithering, ANSI output
reunite · deplace Small macOS terminal utilities

Stack

  • Languages: TypeScript, JavaScript, Python, Swift, Ruby, HTML/CSS
  • Frameworks: React, React Native, Expo, Node.js/Express, Electron, Vue/Nuxt
  • Data: PostgreSQL, MongoDB, SQLite, Supabase, offline-first sync
  • Platforms: AWS, Docker, Vercel, Heroku, GitHub Actions, npm publishing
  • Integrations: REST, GraphQL, WebSocket, Bluetooth, Shopify, eBay, POS hardware, Google & Anthropic APIs
  • Testing: Jest, unit and integration

Off the clock

Arduino projects, Fusion 360 macros, 3D printing, and 6502 assembly games (Snake, LightCycles), playable in the browser at games.infinitetoken.com.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors