Skip to main content

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

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.1.tar.gz (4.8 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.1-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: plain_start-0.3.1.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1.tar.gz
Algorithm Hash digest
SHA256 1d0fdfc18d8bee5f7159c45ed2555474e7add3d2016f9b0839a70fcc181ce9f5
MD5 9f0cb47ae4a786a331d37ed074e493af
BLAKE2b-256 3d64b66b4a25c9463b2bd8ab73fefea716e4077e8f14141949d5574aadf577b9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: plain_start-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8f79272451284777b830f0cc2d8e46eed65dc60c1d6ffc4a6bae23fcc4007139
MD5 b34140c731b474bf46f126881af2c4dc
BLAKE2b-256 4fe4343ab53796b2ce64097574a5df2d81e196b524efe41f7df9d71194ffe3df

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

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