Skip to content
/ yeet Public

For when shell scripts aren't enough but a full program is too much. Yeet that script out!

License

Notifications You must be signed in to change notification settings

TecharoHQ/yeet

Repository files navigation

yeet

enbyware GitHub Issues or Pull Requests by label GitHub go.mod Go version language count repo size

Yeet out actions with maximum haste! Declare your build instructions as small JavaScript snippets and let er rip!

For example, here's how you build a Go program into an RPM for x86_64 Linux:

// yeetfile.js
const platform = "linux";
const goarch = "amd64";

rpm.build({
  name: "hello",
  description: "Hello, world!",
  license: "CC0",
  platform,
  goarch,

  build: ({ bin }) => {
    $`go build ./cmd/hello ${bin}/hello`;
  },
});

Yeetfiles MUST obey the following rules:

  1. Thou shalt never import thine code from another file nor require npm for any reason.
  2. If thy task requires common functionality, thou shalt use native interfaces when at all possible.
  3. If thy task hath been copied and pasted multiple times, yon task belongeth in a native interface.

See the API documentation for more information about the exposed API.

Installation

To install yeet, use the following command:

go install github.com/TecharoHQ/yeet/cmd/yeet@latest

Support

For support, please subscribe to me on Patreon and ask in the #yeet channel in the patron Discord.

About

For when shell scripts aren't enough but a full program is too much. Yeet that script out!

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages