Skip to main content

Build tool

Project description

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/file archives
  • Building and deploying websites and web applications
  • Running things in a repeatable manner
  • 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 🔗

Quick Start

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

        # or, you can use the shell, but it's not recommended:
        # shell(f"echo 'Hello World!' > {task_path('hello-world')}/hello-world.txt"),
    ],
    outputs=[
        "hello-world.txt",
    ],
)
  1. Run makex and the target:
makex run :hello-world
  1. A file at _output_/hello-world/hello-world.txt shall have the following contents:
Hello World!

Limitations

  • Mac support is not tested.
  • Windows is not tested or supported (yet).
This is an early release of Makex. Things may change. If you have any problems, feel free to contact us. 

Pronunciation 🗣

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

Related

Make

Coming Soon

  • Task Self References
  • Custom Action Functions/Macros
  • Tags/Labels
  • Regular Expressions
  • Named Inputs/Outputs
  • Intellij/VSCode integration

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

makex-20241201.tar.gz (120.7 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for makex-20241201.tar.gz
Algorithm Hash digest
SHA256 4503cf5f1e6b504cac6edb7b34bc45b7f5007b316dca855a48e263fea2b9491d
MD5 f679a255d1cbae9f00b8d8136778ec1e
BLAKE2b-256 1a9ab132fdd36a9b0663e304ed40ab432afa05e87ec755beca37adb13fcccbc0

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