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.2.0.tar.gz (4.0 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.2.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: plain_start-0.2.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","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.2.0.tar.gz
Algorithm Hash digest
SHA256 67d4ee13bac41a168e543fc10b7301cd790094ccb14880b723dd5854bca6ef7b
MD5 696165df3f096f90176c64d13181fd75
BLAKE2b-256 8af38b17cfb47c8f8047618276b15325dc577c7c849fcd420de081371620b9f2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: plain_start-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e3b40cf6cf49f07d2ddef532c169c5711086eebaf577f8225165a0a09a59157e
MD5 648429d0ef4cbb613285346a4bc8fcf4
BLAKE2b-256 e82546e70799b7e08fd553fa57e2c2dd2e892449323fa8b28ab3eb21fb237e80

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