How kully/pixel-paint works
Pixel Paint is a browser-based, vanilla-JavaScript pixel-art editor. Users choose a drawing tool and palette, edit a 32×32 canvas, and can use selection operations and undo/redo; the README also documents PNG export. The excerpts show event handling, canvas state, history, palettes, and tool behavior, but do not show all feature wiring or the PNG export implementation. Dashed edges mark documented capabilities whose implementation path or runtime connection is not established by the excerpts.
Main entry points: eventHandlers.js Event Handlers · historyStates.js Canvas History · tools.js Drawing Tools · script.js Color Selection
Components 15
Canvas Editing
- Editor Interface
index.html - Pixel Canvas
js/utils.js - Selection Editing
js/eventHandlers.js
Input and Tools
- Event Handlers
js/eventHandlers.js - Drawing Tools
js/tools.js - Flood Fill
js/algo.js - Line Drawing
js/algo.js
Color and History
- Editor State
js/script.js - History Controls
js/script.js - Canvas History
js/historyStates.js - Color Selection
js/script.js - NES and GB Palettes
js/palette.js - Color Utilities
js/utils.js
Export
- PNG Export
Other components
- Artist
Connections 17
- Artist → Editor Interface: uses
README.md - Editor Interface → Event Handlers: dispatches events
- Event Handlers → Drawing Tools: activates tools
js/eventHandlers.js - Event Handlers → Selection Editing: handles selection
js/eventHandlers.js - Event Handlers → History Controls: invokes undo redo
js/eventHandlers.js - Event Handlers → Color Selection: updates color
js/eventHandlers.js - Drawing Tools → Editor State: updates active tool
js/tools.js - Drawing Tools → Pixel Canvas: edits cells
js/tools.js - Artist → Flood Fill: uses fill tool
README.md - Artist → Line Drawing: draws lines
- Editor State → Canvas History: initializes history
js/script.js - History Controls → Canvas History: moves history pointer
js/script.js - Canvas History → Pixel Canvas: restores saved pixels
- Canvas History → Pixel Canvas: captures pixels
js/historyStates.js - Color Selection → NES and GB Palettes: uses palette colors
README.md - Color Selection → Color Utilities: converts colors
js/script.js - Artist → PNG Export: saves artwork
README.md