0.0.1 • Published 9 months ago

create-conr v0.0.1

Weekly downloads
-
License
-
Repository
-
Last release
9 months ago

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 using swc.
  • 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

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.