Skip to main content

Create Foliant projects from templates.

Project description

Project Initializer for Foliant

This CLI extension add init command that lets you create Foliant projects from templates.

Installation

$ pip install foliantcontrib.init

Usage

You can create a project from the default base template or from a custom template

Base template

Create project from the default base template:

$ foliant init
Enter the project name: Awesome Docs
✔ Generating Foliant project
─────────────────────
Project "Awesome Docs" created in awesome-docs

Custom template

You can load a custom template from a local path or from a git repo

Custom template from a local path

$ foliant init --template /path/to/custom/template
Enter the project name: Awesome Customized Docs
✔ Generating Foliant project
─────────────────────
Project "Awesome Customized Docs" created in awesome-customized-docs

Custom template from a git repository

$ foliant init --template https://github.com/path/to/custom/template
Enter the project name: Awesome Docs from git
────────────────────
Project "Awesome Docs from git" created in awesome-docs-from-git

Other options

You can provide the project name without user prompt:

$ foliant init --name Awesome Docs
✔ Generating Foliant project
─────────────────────
Project "Awesome Docs" created in awesome-docs

Another useful option is --quiet, which hides all output except for the path to the generated project:

$ foliant init --name Awesome Docs --quiet
awesome-docs

To see all available options, run foliant init --help:

$ foliant init --help
usage: foliant init [-h] [-n NAME] [-t NAME, PATH or git-repo] [-q] [-d]

Generate a new Foliant project.

optional arguments:
  -h, --help            show this help message and exit
  -n NAME, --name NAME  Name of the Foliant project.
  -t NAME, PATH or git-repo, --template NAME, PATH or git-repo
                        Name of a built-in project template or path to custom one.
  -q, --quiet           Hide all output accept for the result. Useful for piping.
  -d, --debug           Log all events during project creation. If not set, only warnings and errors are logged.

Project Templates

A project template is a regular Foliant project but maybe containing placeholders in files. When the project is generated, the placeholders are replaced with the values you provide. Currently, there are two placeholders: $title and $slug.

There is a built-in template called base. It's used by default if no template is specified.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

foliantcontrib.init-1.0.10.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

foliantcontrib.init-1.0.10-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file foliantcontrib.init-1.0.10.tar.gz.

File metadata

  • Download URL: foliantcontrib.init-1.0.10.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for foliantcontrib.init-1.0.10.tar.gz
Algorithm Hash digest
SHA256 e2eee04036d8cc2ff2650b608006d6022da7701972d56d413dc14e73b79b07ed
MD5 4429f8ac04f7e42e961fb700b24b5e96
BLAKE2b-256 d47c741c8e5c86660e2514d22257cf93387904fd9272fc18ec104edfc8d52ac5

See more details on using hashes here.

File details

Details for the file foliantcontrib.init-1.0.10-py3-none-any.whl.

File metadata

File hashes

Hashes for foliantcontrib.init-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3ed9607c72c84bc25064df874bfa885a832f88a169f8701f25328e9517a90be1
MD5 180adff7f1119617f02825ee1ac48ed0
BLAKE2b-256 3f94877c728fc5b59693ee3d866a1ffc6c3a9c837f7a823094adf549e71f3b76

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page