Skip to content

WTFB Package Ecosystem - CLI tools for creative projects

License

Notifications You must be signed in to change notification settings

bybren-llc/wtfb-packages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WTFB Packages

Monorepo for the Words To Film By package ecosystem

npm version License: MIT


Packages

Package Version Description
@wtfb/cli 1.0.3 CLI tools for validation, export, and project init

Quick Start

Install the CLI globally

npm install -g @wtfb/cli

Use in your project

# Navigate to your WTFB project
cd my-screenplay

# Validate all files
wtfb validate

# Export to PDF
wtfb export-pdf

Available Commands

wtfb validate           # Validate Fountain, Markdown, spelling
wtfb export-pdf         # Export screenplay to PDF
wtfb export-fdx         # Export to Final Draft XML
wtfb export-html        # Export to HTML preview
wtfb init-readme        # Generate IMDb-style project README
wtfb info               # Show CLI information

Development

Setup

git clone https://github.com/bybren-llc/wtfb-packages.git
cd wtfb-packages
npm install

Workspace Structure

wtfb-packages/
├── packages/
│   ├── cli/            # @wtfb/cli - Command line tools
│   └── core/           # @wtfb/core - Shared logic (future)
├── package.json        # Workspace root
└── .npmrc              # npm configuration

Running locally

# Link CLI for local development
cd packages/cli
npm link

# Now use `wtfb` anywhere
wtfb validate

Publishing

# From packages/cli
npm publish --access public

Architecture

This monorepo uses npm workspaces for package management:

  • Shared dependencies are hoisted to the root
  • Package-specific dependencies stay in each package
  • Scoped packages (@wtfb/*) ensure namespace consistency

Strategy Pattern (Exporters)

Export formats use the Strategy Pattern for extensibility:

BaseExporter (abstract)
├── PdfExporter
├── FdxExporter
└── HtmlExporter

Adding new formats requires only implementing the generate() method.


Related Projects


Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

License

MIT License - see LICENSE for details.


Words To Film By
SponsorIssues

About

WTFB Package Ecosystem - CLI tools for creative projects

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 2

  •  
  •