Files
P4RS3LT0NGV3/build
Dustin Farley dc10a90851 refactor: migrate to modular tool-based architecture
- Implement tool registry system with individual tool modules
- Reorganize transformers into categorized source modules
- Remove emojiLibrary.js, consolidate into EmojiUtils and emojiData
- Fix mobile close button and tooltip functionality
- Add build system for transforms and emoji data
- Migrate from Python backend to pure JavaScript
- Add comprehensive documentation and testing
- Improve code organization and maintainability
- Ignore generated files (transforms-bundle.js, emojiData.js)
2025-12-02 20:26:32 -08:00
..

Build Scripts

Scripts

build-transforms.js

Bundles all transformers from src/transformers/ into js/bundles/transforms-bundle.js

  • Automatically creates the js/bundles/ directory if it doesn't exist
  • Discovers all transformers from category directories
  • Generates a single bundled file for browser use
npm run build:transforms

build-emoji-data.js

Fetches Unicode emoji data and generates js/data/emojiData.js

  • Automatically creates the js/data/ directory if it doesn't exist
  • Uses cached data if available (7-day cache)
  • Merges keywords from src/emojiWordMap.js
npm run build:emoji

inject-tool-scripts.js

Auto-discovers tools in js/tools/ and:

  • Generates script tags in index.template.html
  • Generates auto-registration code in js/core/toolRegistry.js
npm run build:tools

inject-tool-templates.js

Injects tool templates from templates/ into index.html

npm run build:templates

build-index.js

Generates transformer index

npm run build:index

Build Pipeline

npm run build  # Runs all scripts in order:
# 1. build:index
# 2. build:transforms
# 3. build:emoji
# 4. build:tools
# 5. build:templates

Development Workflow

  • Edit transformersnpm run build:transforms
  • Add new toolnpm run build:tools
  • Edit templatesnpm run build:templates
  • Full rebuildnpm run build