Curvenote Docs

Commands

This has the list of all commands for the Curvenote CLI, you can use the help curvenote -h on any command and this will print the help for the command or service. To see the version of Curvenote, use curvenote -v. For debugging, use the -d or --debug flag and all debug commands will be logged, use this if any commands fail.

#Getting Started

These commands are designed with prompts to get you started easily and point you to other information on how to get started.

#curvenote init

Creates a project from a directory or clones a remote Curvenote project.

  • -y or --yes: Follows the defaults for initializing a project.
  • --write-toc: Write an explicit table of contents.

After calling curvenote init you will have a local folder with a curvenote.yml that defines all site and project settings.

#curvenote clone

Clone a remote Curvenote project, and brings all markdown, notebooks, and site configuration to your local folder.

Optional arguments

  • [remote]: specify the remote project URL, e.g. https://curvenote.com/@templates/web if this is not supplied, the CLI will ask you for a remote project URL.
  • [folder]: specify the local folder to clone into, must not exist. When paired with -y below the folder will be chosen as content/name where name is the name of the Curvenote project.

Flags

  • -y or --yes: Follows the defaults for which local folder to clone to, you must provide a remote.

If you are cloning in a folder that already contains a site, then this command will also add the project to your curvenote site.projects list as well as an entry into the navigation.

#Working Locally

#curvenote start

Start a local server that live-reloads when you make changes.

  • -c or --clean: clean all cached content, including images. Clean is called before a curvenote deploy.
  • -f or --force: force re-install all dependencies. Helpful to reset the curvenote web server as well as pull any new changes.
  • --branch: Branch to clone from https://github.com:curvenote/curvenote. Helpful for testing out new features or in development.

#curvenote build

Build all content locally, this is called by start and deploy. You can use this to write a table of contents, or check links or any other issues without starting a server.

  • -c or --clean: clean all cached content, including images. Clean is called before a curvenote deploy.
  • -f or --force: force re-install all dependencies. Helpful to reset the curvenote web server as well as pull any new changes.
  • --branch: Branch to clone from https://github.com:curvenote/curvenote. Helpful for testing out new features or in development.
  • --write-toc: Write an explicit table of contents.
  • -ci: Skip the installation and just create build folders for deployment. Helpful when working in a continuous integration system, like deploying from GitHub.
  • --strict: Summarize build warnings and stop on any errors.
  • --check-links: Check all links to external websites resolve.

#Deploying

#curvenote deploy

  • -y or --yes: Do not ask if you are sure you want to deploy!
  • -f or --force: force re-install all dependencies. Helpful to reset the curvenote web server as well as pull any new changes.
  • -ci: Skip the installation and just create build folders for deployment. Helpful when working in a continuous integration system, like deploying from GitHub.
  • --strict: Summarize build warnings and stop on any errors.
  • --check-links: Check all links to external websites resolve.

Use the site.domains setting in your curvenote.yml to configure which site to deploy to.

#Syncing Content

#curvenote pull

Pull content from a remote Curvenote project or document. This command will overwrite any local content.

  • [path]: the path to a local project folder or file with a remote configured, if omitted all content will be pulled.
  • -y or --yes: Do not ask if you want to override the files.

You can pull both an entire project, or a single file.