{"id":42209,"library":"vaceline","title":"Vaceline","description":"Vaceline (v0.0.6) is a VCL transpiler that transforms Fastly VCL files using JavaScript plugins via AST manipulation. Currently in early development, it provides a CLI for transpiling single files or directories, with support for stdin input and AST output. Unlike alternative VCL tooling, Vaceline focuses on AST-based transformation, enabling custom JS plugins. The CLI accepts standard transpilation commands and offers flags for debugging and output directory specification.","status":"active","version":"0.0.6","language":"javascript","source_language":"en","source_url":"git@github.com:shqld/vaceline","tags":["javascript"],"install":[{"cmd":"npm install vaceline","lang":"bash","label":"npm"},{"cmd":"yarn add vaceline","lang":"bash","label":"yarn"},{"cmd":"pnpm add vaceline","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Named export; no default export in v0.0.6.","wrong":"import transform from 'vaceline'","symbol":"transform","correct":"import { transform } from 'vaceline'"},{"note":"Package may be ESM-only; CommonJS require not guaranteed.","wrong":"const { parse } = require('vaceline')","symbol":"parse","correct":"import { parse } from 'vaceline'"},{"note":"Also a named export; see package exports for full list.","wrong":"","symbol":"compile","correct":"import { compile } from 'vaceline'"}],"quickstart":{"code":"// install: yarn add -D vaceline\n// transpile a VCL file\nimport { execSync } from 'child_process';\n\n// Using CLI\nconsole.log(execSync('yarn vaceline src -d dist').toString());\n\n// Or using programmatic API (if available)\nimport { transform } from 'vaceline';\nconst result = transform('// VCL content', { plugins: [] });\nconsole.log(result.code);","lang":"typescript","description":"Shows CLI usage and potential programmatic API for transpiling a VCL file with Vaceline."},"warnings":[{"fix":"Pin exact version and test upgrades.","message":"Package is pre-1.0 and under active development; API may change without notice.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use ESM imports (import { ... } from 'vaceline').","message":"Potential reliance on CommonJS require may break in future Node versions if package shifts to ESM-only.","severity":"deprecated","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'accept':58 'altern':42 'ast':17,39,49 'ast-bas':48 'base':50 'cli':26,57 'command':61 'current':19 'custom':53 'debug':66 'develop':22 'directori':32,69 'earli':21 'enabl':52 'fast':10 'file':12,30 'flag':64 'focus':46 'input':37 'javascript':14,71 'js':54 'manipul':18 'offer':63 'output':40,68 'plugin':15,55 'provid':24 'singl':29 'specif':70 'standard':59 'stdin':36 'support':34 'tool':44 'transform':9,51 'transpil':7,28,60 'unlik':41 'use':13 'v0.0.6':3 'vacelin':1,2,45 'vcl':6,11,43 'via':16","created_at":"2026-06-04T18:56:09.054550+00:00","updated_at":"2026-06-04T18:56:09.054550+00:00","problems":[{"fix":"Run 'yarn add -D vaceline' or 'npm install -D vaceline'","cause":"Package not installed or missing from node_modules.","error":"Error: Cannot find module 'vaceline'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"git@github.com:shqld/vaceline","github":"git@github.com:shqld/vaceline","docs":null,"changelog":null,"pypi":null,"npm":"vaceline","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-04","next_check":"2026-09-02","install_tag":null}}