Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gochomugo/msu
A minimal Shell framework and CLI tool that makes writing, sharing and using bash scripts less difficult/repetitive
https://github.com/gochomugo/msu
bash msu scripting shell terminal
Last synced: 18 days ago
JSON representation
A minimal Shell framework and CLI tool that makes writing, sharing and using bash scripts less difficult/repetitive
- Host: GitHub
- URL: https://github.com/gochomugo/msu
- Owner: GochoMugo
- License: mit
- Created: 2015-05-20T14:26:25.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-04-26T08:36:18.000Z (7 months ago)
- Last Synced: 2024-10-12T08:09:53.365Z (about 1 month ago)
- Topics: bash, msu, scripting, shell, terminal
- Language: Shell
- Homepage:
- Size: 181 KB
- Stars: 12
- Watchers: 4
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# msu
> A small Shell framework that makes writing bash scripts less sucky
[![Terminal Lover](https://img.shields.io/badge/terminal-lover-blue.svg?style=flat-square)](https://github.com/GochoMugo) [![Travis](https://img.shields.io/travis/GochoMugo/msu.svg?style=flat-square)](https://travis-ci.org/GochoMugo/msu)
* Introductory blog posts: [hack with msu](http://www.gmugo.in/musings/hack-with-msu/), [very first post](https://www.gmugo.in/musings/msu-introduction/)
* [Project Principles](#principles)
* [Showcase of modules using `msu`][showcase]
* [Documentation](#documentation)## features:
> **`msu` wishlist**
* [x] [automated/manual installation][installation]
* [x] [small but comprehensive internal library][api]
* [x] support external modules
* [x] auto-loading aliases modules
* [x] install module from github/bitbucket
* [x] [highly tested](https://travis-ci.org/GochoMugo/msu)
* [x] self upgrade
* [ ] load/unload aliases
* [ ] error catching/handling
* [ ] bash completion
* [ ] compatibility for other shell types e.g. zsh
* [x] manpages## installation:
See the [installation instructions][installation].
## documentation:
You can always browse msu documentation using `man`:
```bash
$ man 1 msu # command
$ man 3 msu # library
```More documentation is placed in the
[`docs/`](https://github.com/GochoMugo/msu/tree/master/docs/) directory:* [installation][installation]
* [API][api]
* [showcase][showcase]
* [hacking on msu][hacking]1. **Little added complexity.** `msu` should **not** warrant the user to learn scripting all over again. An existing script should be converted into a module with less effort.
1. **Minimal**. `msu` core should be as little as possible. How? Use common algorithms and data structures. Avoid doing something too fancy.
1. **Highly configurable**. Using environment variables and command-line switches, `msu` should be configurable in all its operations, including installation.## license:
__The MIT License (MIT)__
Copyright © 2015-2016 GochoMugo
[installation]:https://github.com/GochoMugo/msu/tree/master/docs/installation.md "msu installation"
[api]:https://github.com/GochoMugo/msu/tree/master/docs/api.md "msu API"
[showcase]:https://github.com/GochoMugo/msu/blob/master/docs/showcase.md "showcase of modules using msu"
[hacking]:https://github.com/GochoMugo/msu/blob/master/docs/hack.md "Hacking on msu"