Skip to main content

makex

Makex is a new and simplified build and automation tool.

It makex stuff happen. 🙂

What Makex is used for

  • Compiling software/applications/firmware
  • Building file systems/trees/images/file archives
  • Building and deploying websites and web applications
  • Running things repeatably
  • Replacing most or all of the other build systems

Features 🍩

  • Task based
  • Familiar Syntax
  • File Hashing and Checksums
  • Dependency Graphs
  • Caching
  • Workspaces
  • Copy on Write

Links 🔗

Requirements

  • Python >= 3.9

Quick Start

  1. Install:
pip install makex
  1. Define a Makex file and name it Makexfile ( or makexfile if you prefer):
task(
    name="hello-world",
    steps=[
        write("hello-world.txt", "Hello World!"),

        # or, you can use the shell, but it is not recommended:
        # shell(f"echo 'Hello World!' > {self.path}/hello-world.txt"),
        
        # you may also execute things:
        # execute("echo", "Hello World!"),
        
        # or just print things:
        # print("Hello World!"),
        
        # more actions can go here; such as copying, mirroring or archiving...
    ],
    outputs=[
        "hello-world.txt",
    ],
)
  1. Run makex, specifying the task name:
makex run :hello-world
  1. A file at $PWD/_output_/hello-world/hello-world.txt shall have the following contents:
Hello World!

Read the documentation to learn more.

Limitations

  • Mac support is not tested.
  • Windows is not tested or supported (yet).

Pronunciation 🗣

Makex is pronounced "makes", ˈmeɪks, ˈmeɪkˈɛks (or just "make" 🙂)

Related

Coming Soon

  • Dynamic Task/Resource Allocation
  • Task Tags/Labels
  • Regular Expressions
  • Intellij/VSCode integration
This is an early release of Makex. Things may change. Those changes will be noted in the HISTORY file (especially major ones).

With that, Makex is being used extensively by us. We've created many tasks and Makex files, and we don't want to create more work. 🫡

If you have any problems, feel free to contact us. 

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

makex-20250101.tar.gz (141.3 kB view details)

Uploaded Source

File details

Details for the file makex-20250101.tar.gz.

File metadata

  • Download URL: makex-20250101.tar.gz
  • Upload date:
  • Size: 141.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.21

File hashes

Hashes for makex-20250101.tar.gz
Algorithm Hash digest
SHA256 64e1f252f4742260c2d3e4a7b5868bf5e08877efc0f12e1b4ede1e5a1eee06dc
MD5 17c06a667370d6d4911644ea6eeb14a5
BLAKE2b-256 0ffe1de81aaf9c2fc48df99bdfed5e8172678686388df65f726c69fde03ff758

See more details on using hashes here.

Release history Release notifications | RSS feed

20250502

1 file

20250501

1 file

20250301

1 file

20250102

1 file

This release

20250101 This release

1 file

20241201

1 file

20240601

1 file

20240401

1 file

20240203

1 file

20240202

1 file

20240201

1 file

20240103

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page