Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14,090 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

This is om: my python monorepo, the successor to my previous one omnibus(... 'ish').

This is my 'production' codebase - code which has graduated from and powers my various other little projects.

It's organized into a handful of toplevel libraries - the om* directories - which are each independently installable and published to pypi.

The toplevel libraries have no required dependencies besides each other - omcore in particular has none at all - but there are a number of optional ones - see their respective pyproject.toml files for details.

Standard code is written for python 3.14+, 'lite' code for 3.8+.

Toplevel libraries

  • omcore - Core foundational code - the comprehensive standard library, including language helpers (like lazy imports), a dataclasses rebuild, a dependency injector, and a serde system. This is the most stable of the libraries, and the bottom of the dependency graph.
  • omdev - Development utilities, including the all-in-one om CLI, the amalgamator, the pyproject tool, and the ci engine. This is intended to not generally be present in production environments.
  • omllm - LLM code.
  • ominfra - Infrastructure and cloud code, including a boto alternative and a remote management tool.

Installation

Toplevel libraries are installable by name from pypi:

pip install omcore

Or directly from git via:

pip install 'git+https://github.com/wrmsr/om@master#subdirectory=.pkg/omcore'

The CLI is installable through uvx or pipx via:

curl -LsSf 'https://raw.githubusercontent.com/wrmsr/om/master/omdev/cli/install.py' | python3 -

Additional deps to be injected may be appended to the command.

Once installed the CLI can be updated via:

om cli reinstall

Project structure

The structure of the repo is managed by the internal pyproject tool, which generates .pkg directories (which map to published packages) from each library's __about__.py. The root-level pyproject.toml does not actually contain a PEP-621 project.

About

My python monorepo.

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages