A command-line interface tool for scaffolding CAMI (Cellular Automaton Model Interface) projects. Create plugin systems or visualization projects with a single command.
npm install cami-clibash
npm install -g cami-cli
`
š Usage
Run the CLI to create a new project:
`bash
cami
`
Or using npx (without global installation):
`bash
npx cami-cli
`
The CLI will guide you through an interactive setup process where you can:
1. Name your project
2. Choose between Plugin or Visual project types
3. Customize your setup options
š Project Types
$3
Creates a new system to extend functionality with custom plugins.
Features:
- Pre-configured C++ plugin skeleton
- CMake build system setup
- Template file system with automatic name replacement
- Git repository initialization
$3
Creates a new system to visualize plugins using modern web technologies.
Features:
- React + Vite setup
- Optional PixiJS integration for grid-based rendering
- Tailwind CSS for styling
- Custom hooks for grid management (optional)
- Git repository initialization
š ļø Development
$3
- Node.js (v14 or higher)
- npm or yarn
- Git
$3
1. Clone the repository:
`bash
git clone https://github.com/Cellular-Automaton/CAMI-CLI.git
cd CAMI-CLI
`
2. Install dependencies:
`bash
npm install
`
3. Run locally:
`bash
npm start
`
š Project Structure
`
CAMI-CLI/
āāā index.js # Main CLI entry point
āāā package.json # Project metadata and dependencies
āāā README.md # Documentation
`
š¤ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
š License
ISC
š Links
- GitHub Repository
- Visual Skeleton
- Plugin Skeleton
š” Examples
$3
`bash
$ cami
Welcome to the CAMI cli!
How do you want to name your project? my-awesome-plugin
Select the type of project: Plugin (A new system to extend functionality)
ā Plugin project created successfully!
`
$3
`bash
$ cami
Welcome to the CAMI cli!
How do you want to name your project? my-visualization
Select the type of project: Visual (A new system to visualize plugins)
Do you want a base project with a grid and PixiJS setup? Yes
ā Project created successfully!
``