Skip to main content

Bootstrap a new Plain project from starter templates

Project description

plain-start

Bootstrap a new Plain project from official starter templates.

Overview

You can create a new Plain project with a single command:

uvx plain-start my-project

This clones the official app starter template, configures your project name, initializes a fresh git repository, and runs the installation script. When it finishes, you'll have a working project ready to go.

cd my-project
uv run plain dev

Starter templates

Plain provides two official starter templates hosted on GitHub.

App starter (default)

The app starter includes everything you need for a full-featured web application:

  • Database ORM
  • User authentication
  • Admin interface
  • Session management
  • All core Plain packages
uvx plain-start my-app

Bare starter

The bare starter is a minimal setup for when you want to start from scratch:

  • Plain framework core only
  • Development tools
  • No database or auth
uvx plain-start my-project --type bare

Options

--type

Choose which starter template to use. Defaults to app.

uvx plain-start my-project --type bare

--no-install

Skip running the ./scripts/install script after cloning. Use this if you want to inspect the project before installing dependencies.

uvx plain-start my-project --no-install
cd my-project
# review the project structure...
./scripts/install

FAQs

What happens during project creation?

The cli command performs these steps:

  1. Clones the starter repository (shallow clone for speed)
  2. Removes the .git directory and initializes a fresh repository
  3. Updates the project name in pyproject.toml
  4. Runs ./scripts/install to set up dependencies (unless --no-install is used)

Where are the starter templates hosted?

The starter templates are hosted on GitHub:

What if the directory already exists?

The command will exit with an error. You'll need to choose a different project name or remove the existing directory first.

What if the install script fails?

If the installation script fails, you'll see a warning message. You can try running ./scripts/install manually after investigating the issue.

Installation

The recommended way to use plain-start is with uvx, which runs the command without needing to install it first:

uvx plain-start my-project

If you prefer to install it globally:

uv tool install plain-start
plain-start my-project

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

plain_start-0.3.0.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plain_start-0.3.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file plain_start-0.3.0.tar.gz.

File metadata

  • Download URL: plain_start-0.3.0.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for plain_start-0.3.0.tar.gz
Algorithm Hash digest
SHA256 64895537b25ef5ce7a842fd7c5eb1cab7ca8fbb3ca0ae2ca4cb358349ef2df8d
MD5 61067fd4175bc86ae5ebca9a1108e4d0
BLAKE2b-256 081bae3ec18b3550e0c14f5ced79199c6b7efc01f61dc7e9477be9b250bde31a

See more details on using hashes here.

File details

Details for the file plain_start-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: plain_start-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for plain_start-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6f83cd31a5f14979c101c5e1f35502f180416fa8f3c35564948dc99fef19f1d
MD5 459c6c9b74bf4c510c37c4cf33fc39ef
BLAKE2b-256 31ad87998ba21e6d2b2a2b46f9bee4038db196b00c53d301d5a78a1db378ca65

See more details on using hashes here.

Supported by

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