> For the complete documentation index, see [llms.txt](https://knot.gitbook.io/language/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knot.gitbook.io/language/getting-started.md).

# Getting Started

Quickly get setup to work with Knot.

## Starting a New Project

If you will be starting a new `knot` project, the best option would be to use the provided project generator. It currently supports projects which use `react`, `vue`,`webpack`, `browserify` and `rollup`. In order to run the command either install it globally or use it directly with `npx`.

```bash
npm install --global @knot/cli
# or
yarn global add @knot/cli
```

To start a new project, create a directory for it and run the generator's `init` command. You will be prompted to choose a type of project as well as answer a couple of questions.

```bash
knot init
# or, to skip installation
npx knot init
```

This command will generate a number of files, most important being the following:

* `.knot.yml` - configuration file for the `knot` compiler
* `src/index.js` - the javascript entry point
* `src/index.kn` - the `knot` application entry point

A development server can be started by running the package's `start` command:

```bash
npm start
# or
yarn start
```

The code can also be bundled by `webpack` into minified javascript and html:

```bash
npm build
# or
yarn build
```
