@snowplow/snowtype
Version:
A code generator CLI for faster and type-safe Snowplow tracking code
62 lines (42 loc) • 1.64 kB
Markdown
# CLI
This package is responsible for our CLI tools, which will be used directly by our users.
## For developers
Useful scripts:
| Script | Description |
| ------------------- | ------------------------------------ |
| start | Run cli for development |
| build:production | Builds project for deployment |
| build | Builds project for local development |
| fix-version | Fix version |
| lint:fix | Fix for any lint issues |
| lint | Check for any lint issues |
| prebuild:production | Remove dist folder |
| test | Runs test |
### Running the application
Add a `.env` file in the `packages/cli` folder with the following content:
```bash
SNOWPLOW_CONSOLE_API_KEY_ID=YOUR_KEY_ID_HERE
SNOWPLOW_CONSOLE_API_KEY=YOUR_KEY_HERE
SNOWPLOW_CONSOLE_API_URL=https://next.console.snowplowanalytics.com/api/msc
```
Then use:
```bash
npm run snowtype init
```
to initialize the project.
Edit file `snowtype.config.ts` adding data products or event specifications.
Then run:
```bash
npm run snowtype generate
```
This will run the app and generate output code using ts-node.
Alternatively, you can directly use the JavaScript file by running:
```bash
npm run build
node dist/index.js
```
Notes:
- To see the type in the generated code (visible under the `snowtype` output folder), you need to install a related tracker, for instance:
```bash
npm i -D @snowplow/browser-tracker -w @snowplow/snowtype
```