Curvenote CLI Overview
curvenote is a command line interface (CLI) for writing scientific and technical content in MyST Markdown and Jupyter Notebooks. It previews a project as a website while you write, exports it to PDF, LaTeX, Word and JATS, and publishes it to Curvenote as a site or a submission to a venue. The Curvenote extension for VS Code is its companion in the editor: suggestions as you type, documentation on hover, checks and quick fixes, and formatting on save.
npm install -g curvenote
curvenote init
curvenote startInstall the CLI to get started, then use curvenote init to set up a project and curvenote start to see it rendered.

Figure 1:curvenote start builds your project and serves it as a website that reloads as you write.
What you can do¶
Start a live preview of your project as a website, with notebooks executed if you ask, and pick the theme it renders in with site templates.
The Curvenote extension knows MyST: directives, roles, options and frontmatter as you type, with ORCID and ROR records checked for your authors.
Build PDF, LaTeX, Typst, Word, JATS and MECA exports, a static HTML site, or the content for a Curvenote site.
Deploy a site, push a work to Curvenote, and submit it to a venue, from your machine or from continuous integration.

Figure 2:The Curvenote extension for VS Code suggests the options of the image directive, each with its documentation.
How the pieces fit¶
The CLI and the extension read the same project: the curvenote.yml (or myst.yml) at its root and the frontmatter at the top of each page. You write in VS Code with the extension checking your MyST as you go, preview with curvenote start, and publish with curvenote deploy or curvenote submit once you have signed in. Every command is in the command reference, and the theme your site renders in is set by its site template.
To change how a site draws a particular kind of content, ship render plugins with your project, and use the cn:articles directive to list a site’s latest articles on a page.
Open source¶
The Curvenote CLI is open source (MIT License) and lives in curvenote/curvenote, where you can open an issue. The VS Code extension is in curvenote
- CLI
- Command Line Interface
- HTML
- Hypertext Markup Language
- JATS
- Journal Article Tag Suite
- MyST
- Markedly Structured Text
- ORCID
- Open Researcher and Contributor ID