{"id":20224967,"url":"https://github.com/adwaith-rajesh/buildme","last_synced_at":"2026-06-12T09:32:06.427Z","repository":{"id":191652471,"uuid":"685085393","full_name":"Adwaith-Rajesh/buildme","owner":"Adwaith-Rajesh","description":"Yep, It's another build system","archived":false,"fork":false,"pushed_at":"2023-10-31T15:03:11.000Z","size":53,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-04T06:20:42.410Z","etag":null,"topics":["build-system","build-tool","python-3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Adwaith-Rajesh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-08-30T13:39:22.000Z","updated_at":"2023-09-05T18:24:06.000Z","dependencies_parsed_at":"2023-08-30T23:59:48.731Z","dependency_job_id":"879345ab-922f-4fe8-a72b-5b2fba32c890","html_url":"https://github.com/Adwaith-Rajesh/buildme","commit_stats":null,"previous_names":["adwaith-rajesh/buildme"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/Adwaith-Rajesh/buildme","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adwaith-Rajesh%2Fbuildme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adwaith-Rajesh%2Fbuildme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adwaith-Rajesh%2Fbuildme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adwaith-Rajesh%2Fbuildme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Adwaith-Rajesh","download_url":"https://codeload.github.com/Adwaith-Rajesh/buildme/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adwaith-Rajesh%2Fbuildme/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34238713,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-12T02:00:06.859Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-system","build-tool","python-3"],"created_at":"2024-11-14T07:10:09.409Z","updated_at":"2026-06-12T09:32:06.409Z","avatar_url":"https://github.com/Adwaith-Rajesh.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BuildMe 🛠️\n\nAnother build system. A simple command runner thats it.\n\n# What is BuildMe 🤔️\n\nWell this pretty much sums it up.\n\n![xkcd comic](https://imgs.xkcd.com/comics/standards.png)\n\n# Why???\n\nIDK. I saw this comic and decided that I want a build system of my own.\n\nAnd,\n\n- Makefile's are shit.\n- Cmake is complicated\n- Meson requires two dependencies (Meson and Ninja)\n- Bazel, corporate BS\n\nIt does come with some feature.\n\n- It is just command runner (Does not give an _f_ about the file or it's mod time)\n  - v0.3.0 onwards, buildme does give an _f_ about the file and it's mod times (times have changed)\n- It's just python. Anything that works on python works on buildme script.\n  - you want a build script that has access to `pandas`, well you can now have it.\n\n# Docs 🧾️\n\n- Install buildme\n\n```console\npip3 install git+https://github.com/Adwaith-Rajesh/buildme.git\nOR\npip3 install buildme\n```\n\n- Create a `buildme` script\n  \u003e The shebang is IMPORTANT (This thingy -\u003e #!/bin/env buildme)\n\n```python\n#!/bin/env buildme\nfrom buildme import CommandRunner, target\n\ncr = CommandRunner()\n\n@target()\ndef foo(_, __):\n    print('This is the foo target')\n\n\n@target()\ndef bar(_, __):\n    cr.run('echo this is from bar target')\n\n\n@target(depends=['foo', 'bar'])\ndef all(_, __): pass\n\n```\n\n- Make it executable\n\n```console\n$ ./buildme foo\nThis is the foo target\n\n$ ./buildme bar\n================================================================================\n[CMD]: echo this is from bar target\nthis is from bar target\n================================================================================\n\n$ ./buildme all\nThis is the foo target\n================================================================================\n[CMD]: echo this is from bar target\nthis is from bar target\n================================================================================\n```\n\nMore docs can be found here: [Docs](/docs/buildme.md)\n\n- [Buildme](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#buildme-scripts)\n- [Target](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#target)\n  - [Creating a target](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#creating-a-target)\n  - [Target depending on another target](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#target-depending-on-another-target)\n  - [Target depending on files](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#target-depending-on-files)\n  - [Targets that creates files](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#targets-that-creates-files)\n- [CommandRunner](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#commandrunner)\n- [Receiving Command line args](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#receiving-command-line-args)\n- [Getting info about the target itself](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#getting-info-about-the-target-itself)\n- [Dynamic 'creates'](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#dynamic-creates)\n- [Combining Ideas](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#the-above-two-ides-can-combined-to-do-this)\n- [Helper functions](https://github.com/Adwaith-Rajesh/buildme/blob/master/docs/buildme.md#helper-functions)\n\n# Bye....\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadwaith-rajesh%2Fbuildme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadwaith-rajesh%2Fbuildme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadwaith-rajesh%2Fbuildme/lists"}