create-conr
v0.0.1
Published
An npm init supported CLI for bootstrapping co.nr
Downloads
29
Maintainers
Readme
create-conr
An npm init supported CLI for bootstrapping conr-library projects
A CLI for creating new conr-library pipeline projects. Just run...
Copy code
npm create conr@latest
...and follow the prompts.
This will scaffold a new TypeScript project with example "Hello World" pipeline source files using JSX syntax for pipeline components. The wizard will guide you through selecting basic options to tailor your project setup.
Getting Started
After creating your project with create-conr, navigate into your project directory:
cd my-new-pipeline
Install the dependencies:
npm install
Build your pipeline project:
npm run build
This uses swc to compile your TypeScript and JSX pipeline definitions into conr bytecode.
Deploy your conr bytecode:
npm run deploy
This command makes requests to conr to deploy the pipeline hooks defined in your project.
Project Structure
Your new project will have the following structure:
my-new-pipeline/
├── src/
│ └── main.tsx # Your main pipeline definitions using JSX
├── package.json
├── tsconfig.json
├── .eslintrc.js # If ESLint was selected
├── .prettierrc # If Prettier was selected
└── README.md
Options
During the setup, create-conr will prompt you with the following options:
- Project Name: The name of your new pipeline project.
- Template: Choose a starter template (e.g., default, advanced, etc.).
- TypeScript: Use TypeScript for your project (recommended).
- ESLint: Include ESLint for code linting.
- Prettier: Include Prettier for code formatting.
Scripts
The following npm scripts are available:
npm run build
: Builds the project usingswc
.npm run deploy
: Deploys the pipeline hooks to conr.npm run lint
: Runs ESLint if included.npm run format
: Formats code using Prettier if included.
API
You can also use create-conr programmatically:
import { create } from 'create-conr';
await create('my-new-pipeline', {
name: 'my-new-pipeline',
template: 'default', // or other available templates
typescript: true, // or false for JavaScript
eslint: true, // include ESLint configuration
prettier: true, // include Prettier configuration
});
Learn More
- Conr-Library Documentation: conr-library docs
- Issue Tracker: Issue Tracker
Contributing
Contributions to the conr-library and the pipeline infrastructure code are welcome! Please note that while the library and most of the related tools are open source, the backend services (including the core hosting infrastrcture software) are closed source. We encourage contributions to the open parts of the system and welcome feedback and suggestions for the entire project 😊
For more details on how you can contribute, please see our contribution guidelines.
License
The conr-library and associated tools are free and open for personal and non-commercial use. However, please note that the backend infrastructure and services (similar to AWS CDK) are currently closed-source and proprietary. Contributions to the open portions of the project are welcome, but the backend will remain closed at this time.
By using the system, you agree to the terms and conditions outlined in the project's LICENSE.