Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PythonStarter

A reusable, cross-platform Python starter project.

Keep the structure standard. Keep the implementation elastic.


Overview

PythonStarter provides a clean, reusable foundation for modern Python projects.

It is intentionally lightweight, allowing each project to evolve according to its own requirements while maintaining a familiar engineering structure.


Features

  • Modern Python project layout
  • src-based package structure
  • Conda-friendly
  • pip-friendly
  • pytest ready
  • Ruff linting
  • Ruff formatting
  • MIT License
  • Cross-platform

Requirements

  • Python 3.13 or newer
  • Conda (recommended)

Project Structure

python-starter/
│
├── data/
├── docs/
├── notebooks/
├── src/
│   └── python_starter/
├── tests/
│
├── .gitignore
├── environment.yml
├── LICENSE
├── pyproject.toml
└── README.md

Create the Environment

conda env create -f environment.yml

Activate

conda activate python-dev

Install

python -m pip install -e .

Run

python -m python_starter

or

python-starter

Test

pytest

Lint

ruff check .

Format

Check formatting:

ruff format --check .

Apply formatting:

ruff format .

Daily Development Workflow

ruff check .

ruff format .

pytest

Design Philosophy

This starter project follows a few simple engineering principles.

  • Standardize the structure.
  • Keep the implementation elastic.
  • Consistency reduces friction.
  • Automate repetition.
  • Preserve creativity.
  • Optimize for Future Francois.

Future Improvements

Potential additions include:

  • MkDocs
  • GitHub Actions
  • Coverage reporting
  • Pre-commit hooks
  • Packaging and publishing

License

This project is licensed under the MIT License.

See the LICENSE file for details.

About

Reusable cross-platform Python starter project.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages