Yalla Nkardaz’s personal CLI toolkit
Project description
YAL
YAL is a command-line utility for project initialization and updates based on templates.
Commands
yal create <kind>[:<name>][@<ref>]— uses a template to create a new project (currently supports onlybookkind)yal update <kind>[:<name>]— updates an existing project (currently supports onlybookkind)
Install utility
pip install yal
Create a project
Downloads the template (if not cached locally) and initiates the configuration process.
# Basic usage
yal create book
# Using a specific template
yal create book:template-name
# Using a specific version (tag or commit hash)
yal create book@version
# Combined usage
yal create book:template-name@version
yal.toml
A configuration file used as a prompt when creating a project from a template. The yal.toml file is located in the root of the template and may have a structure like the following:
[meta]
yal-min-version = "0.1.0"
[[fields]]
id = "book-name"
type = "text"
required = true
default = "{placeholder}"
is-folder-name = true
[[fields]]
id = "book-author"
type = "text"
required = false
default = ""
[[fields]]
id = "book-lang"
type = "select"
options = ["ru", "en", "de"]
default = "ru"
[messages.ru]
book-name.prompt = "Введите название книги"
book-name.placeholder = "Книга без названия"
book-author.prompt = "Введите имя автора"
book-author.placeholder = "Аноним"
book-lang.prompt = "Выберите язык книги в формате ISO-639"
[messages.en]
book-name.prompt = "Enter book title"
book-name.placeholder = "Untitled book"
book-author.prompt = "Enter author name"
book-author.placeholder = "Anonymous"
book-lang.prompt = "Select book language in ISO-639 format"
[[targets]]
file = "/meta/book.yml"
format = "yaml"
[[targets.fields]]
field = "book-name"
key = "book.title"
[[targets.fields]]
field = "book-author"
key = "author[0].name"
[[targets.fields]]
field = "book-lang"
key = "property.language[ISO-639]"
Built-in templates
<Book> Typst Book Template
- Repo: https://github.com/DemerNkardaz/Typst-Book-Template
- Name: default
A template for creating a book using Typst, including a prebuilt structure, plugins, styles, settings, and a build system that combines Typst and Python tools.
Requires installation of the Typst compiler and the Python packages pyyaml, pikepdf, and pillow.
pip install pyyaml pikepdf pillow
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yal_cmd-0.1.0.tar.gz.
File metadata
- Download URL: yal_cmd-0.1.0.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3241cb19c571c00ad455a8a16c33b9e4dba459e7ba527afeb1ec6361dd4ad9b
|
|
| MD5 |
2d86f94f7d1e04f58a3bc8bd52c9a02f
|
|
| BLAKE2b-256 |
91ac9d4c679ce916350178e4907cc3803b2db325708a82fe1f119ec614b6a0d8
|
File details
Details for the file yal_cmd-0.1.0-py3-none-any.whl.
File metadata
- Download URL: yal_cmd-0.1.0-py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
787e5fcdff9731572d710edd7aba64cf504a5a45a0a223444582edd52fa5ae5d
|
|
| MD5 |
6b7dda10d3e0546272d41c3d3ed243eb
|
|
| BLAKE2b-256 |
bc890fc394712c86e0a438e309c695bf588a3b36767faeca4235959f5d6c0a9f
|