Skip to main content

A Markdown-based Makefile alternative.

Project description

makedown - A Markdown powered Makefile alternative

pip install makedown

makedown is a versatile CLI tool that lets you execute shell scripts, JavaScript code, Python code, or any other script defined in one or more markdown files.

It's a streamlined alternative to Makefile, package.json, or scattered shell scripts, featuring built-in syntax highlighting through markdown code blocks and allowing documentation of commands in a human-friendly format.

Key Features

  • Multilingual Execution: Supports Zsh, JavaScript, and Python.
  • Simplified Scripting: Use markdown files (.md) to organize and run commands.
  • Syntax Highlighting: Leverages markdown code blocks for readability.
  • Autocomplete Support: ZSH completions for a smoother workflow.
  • Flexible Code Blocks: Support for triple backtick code blocks.

Installation

Usage

  1. Define and document your commands in a markdown file, like in DEMO.md.
  2. Run commands using makedown from the same directory or any subdirectory:
makedown --help  # Prints help with available commands
makedown         # Also prints help

makedown my_command           # Runs the command
makedown my_command arg1 arg2 # Pass arguments to the command
makedown my_command --help    # Prints help for the command

Development

These are actual makedown commands:

venv Create a virtual environment

python3 -m venv venv
source venv/bin/activate && pip install --upgrade pip

Activate the virtual environment manually everytime you start a new shell

source venv/bin/activate

install Install Python dependencies

pip install setuptools wheel twine black

format Format the source code

black makedown.py

build Build the package

rm -rf build dist makedown.egg-info
python setup.py sdist bdist_wheel

publish Publish the package to PyPI

makedown build
twine upload dist/*

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

makedown-0.0.1.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

makedown-0.0.1-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file makedown-0.0.1.tar.gz.

File metadata

  • Download URL: makedown-0.0.1.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for makedown-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ed5d22472658f6d4689d155f80aeac037f4353b72411df80e74730ce267df90b
MD5 f4b23cb4a21e42bc6fd2ad7f97e2faba
BLAKE2b-256 d9aa6d73e479def4752b40154d7246211f67f8e9cb6dca8187c0505af4e297ed

See more details on using hashes here.

File details

Details for the file makedown-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: makedown-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 4.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for makedown-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7bc9109503a8a658410b658e23e5d1d2d2ad63e1eb0c389054e0e611b86dace6
MD5 dd86e099f9fc48dca31551f8081ddfa0
BLAKE2b-256 13adee62b47b93b7f41caf0c483d6e28c8d02ca7e22c040b918823be32634058

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