All Projects → axvm → cake

axvm / cake

Licence: MIT license
Cake is a powerful and flexible Make-like utility tool. Make Tasks Great Again!

Programming Languages

crystal
512 projects
HTML
75241 projects
shell
77523 projects

Projects that are alternatives of or similar to cake

Svelto.tasks
Svelto Tasks - C# promises compliant multi-threaded tasks runner
Stars: ✭ 159 (+148.44%)
Mutual labels:  tasks
vindigo
📝 A brand new kanban inspired planning tool for all your projects. 💻
Stars: ✭ 52 (-18.75%)
Mutual labels:  tasks
ptScheduler
Pretty tiny Scheduler or ptScheduler is an Arduino library for writing non-blocking periodic tasks easily.
Stars: ✭ 14 (-78.12%)
Mutual labels:  tasks
Taskr
A fast, concurrency-focused task automation tool.
Stars: ✭ 2,421 (+3682.81%)
Mutual labels:  tasks
composer
API-first task runner with three methods: task, run and watch.
Stars: ✭ 35 (-45.31%)
Mutual labels:  tasks
activiti-examples
Alfresco Process Services powered by Activiti Examples.
Stars: ✭ 58 (-9.37%)
Mutual labels:  tasks
Orgzly Android
Outliner for taking notes and managing to-do lists
Stars: ✭ 2,042 (+3090.63%)
Mutual labels:  tasks
hammer
Build Tool for Browser and Node Applications
Stars: ✭ 226 (+253.13%)
Mutual labels:  tasks
dispatcher
Dispatcher is an asynchronous task queue/job queue based on distributed message passing.
Stars: ✭ 60 (-6.25%)
Mutual labels:  tasks
rituals
🔧 📦 Project automation task library for ‘Invoke’ tasks that are needed again and again.
Stars: ✭ 30 (-53.12%)
Mutual labels:  tasks
Praveshan
For Joining [email protected]
Stars: ✭ 220 (+243.75%)
Mutual labels:  tasks
Todoman
✅ A simple, standards-based, cli todo (aka: task) manager.
Stars: ✭ 247 (+285.94%)
Mutual labels:  tasks
przepisy-programisty
Sernik i inne przepisy programisty: precyzyjne, powtarzalne i przepyszne!
Stars: ✭ 117 (+82.81%)
Mutual labels:  cake
Flask Rq2
A Flask extension for RQ.
Stars: ✭ 176 (+175%)
Mutual labels:  tasks
metana
Abstract task migration tool written in Go for Golang services. Database and non database migration management brought to the CLI.
Stars: ✭ 61 (-4.69%)
Mutual labels:  tasks
Foy
A simple, light-weight and modern task runner for general purpose.
Stars: ✭ 157 (+145.31%)
Mutual labels:  tasks
rake-rs
Multilingual implementation of RAKE algorithm for Rust
Stars: ✭ 30 (-53.12%)
Mutual labels:  rake
EnumerableAsyncProcessor
Process Multiple Asynchronous Tasks in Various Ways - One at a time / Batched / Rate limited / Concurrently
Stars: ✭ 84 (+31.25%)
Mutual labels:  tasks
async
async is a tiny C++ header-only high-performance library for async calls handled by a thread-pool, which is built on top of an unbounded MPMC lock-free queue.
Stars: ✭ 25 (-60.94%)
Mutual labels:  tasks
taskctl
Concurrent task runner, developer's routine tasks automation toolkit. Simple modern alternative to GNU Make 🧰
Stars: ✭ 237 (+270.31%)
Mutual labels:  tasks

Cake Build Status

Cake is a powerful and flexible Make-like utility tool. Implement tasks on plain crystal-lang and Make Tasks Great Again!

Installation

Execute command to install Cake

$ curl https://raw.githubusercontent.com/axvm/cake/master/install.sh | bash

Usage

Develop tasks in plain Crystal code in Cakefile and run them via $ cake :task_name

bin/cake

  Usage:
    cake task_name
    cake -T

  Options:
    -T, --tasks                      Show all tasks
    -h, --help                       This info
    -v, --version                    Show version

Cakefile sample

# Define task
task :task_name do
  # task logic
end

# Define task with description
desc "task useful description"
task :some_task do
  # 2 + 1
end

# Run one task from another
desc "invoke example"
task :first do
  # -Infinity / 0
  invoke! :second
end

task :second do
  # yay we are here!
end

# Execute shell commands
task :build do
  execute "shards build"

  # or with sweet logs
  execute(
    cmd: "shards build",
    announce: "Building binary...",
    success: "Binary built!",
    error: "Build failed."
  )
end

# Log things
task :deploy do
  # your deploy code
  log "Deploy successful!"
  log "Or errored.", 1
end

Development

  1. Implement feature and tests
  2. Create pull request
  3. ...
  4. Profit!

Contributing

  1. Fork it ( https://github.com/axvm/cake/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • [axvm] Alexander Marchenko - creator, maintainer
  • [alexandregv] Alexandre Guiot--Valentin - contributor
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].