* ATXP-407: Integrate Cloudflare Workers template into atxp create command
Added support for creating projects with the Cloudflare Workers AI agent template alongside the existing Express template. Users can now choose between frameworks using the --framework flag.
Changes:
- Added 'cloudflare' as a new framework option
- Updated Framework type to include 'cloudflare'
- Added Cloudflare template configuration pointing to atxp-cloudflare-agent-example
- Updated README with cloudflare framework examples
- Added framework-specific installation instructions (npm install vs npm run install-all)
- Updated tests to validate both express and cloudflare frameworks
Core Features
Updated template repository from atxp-express-example to atxp-express-starter
Added Framework type for type safety and extensibility
Changed createProject to require app name as first parameter (eliminates interactive prompt)
Added command line argument support for framework selection (--framework)
Added smart git initialization with --git and --no-git flags
Fixed help flag handling to show help instead of running commands
Wrapper Package Updates
Updated create-atxp wrapper to support new API
Fixed argument passing from npm create atxp to underlying atxp create command
- Move argument parsing from run-demo.ts to index.ts for better separation of concerns
- Add --port/-p option to specify custom demo port (default: 8016)
- Add --dir/-d option to specify custom demo directory (default: ~/.cache/atxp/demo)
- Refactor runDemo() to accept DemoOptions parameter for type safety
- Update all helper functions to use passed parameters instead of global state
- Add comprehensive documentation in help text and README files
- Support path resolution for relative directory paths
New usage examples:
- npx atxp demo --port 3000
- npx atxp demo --dir ./my-demo
- npx atxp demo --port 9000 --dir ~/projects/demo --verbose
Resolves port conflicts and allows flexible demo installation locations.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>