30s
v1.5.46
Published
A command-line application for 30 seconds of code snippets
Readme
30s
A command-line application for 30 seconds of code snippets.

Features
- Written in JavaScript (ES6)
- View, view by tag and search snippets
- Show what you find necessary by picking a layout
- Colorful output or JSON
- Copy all code to clipboard
- Automatically updates with new snippet changes
- Works on Linux, Mac and Windows
Installation
Pick one of the following options to install the command-line application:
Option 1: NPM / Yarn
npm install -g 30syarn add -g 30sOption 2: Source
$ git clone [email protected]:sQVe/30s.git
$ cd 30s/
$ npm install
$ node lib/index.js <command> <query>Usage
Commands
| Short version | Long version | Description |
| :-----------: | :----------: | ------------------------------------ |
| r | random | View random snippet |
| s | search | Fuzzy search (RegExp) snippets by id |
| t | tag | View snippets by tag |
| v | view | View snippet with id |
| * | | View snippet with id |
Options
| Short version | Long version | Description |
| :-----------: | :----------: | ---------------------------------------------------------------- |
| -c | --cp | Copy snippet code to clipboard |
| -j | --json | Print output in JSON format |
| -l | --layout | Print output with specified layout (default: "itced") |
| -h | --help | Output usage information |
Layout
| Layout key | Description |
| :--------: | -------------------------- |
| i | Output snippet id |
| t | Output snippet tags |
| c | Output snippet code |
| e | Output snippet examples |
| d | Output snippet description |
Examples
| Example | Description |
| :--------------------------- | ---------------------------------------------------------------------------- |
| 30s head | View snippet with id head |
| 30s v head | View snippet with id head |
| 30s view head | View snippet with id head |
| 30s r | View random snippet |
| 30s random | View random snippet |
| 30s t array | View snippets by tag array |
| 30s tag array | View snippets by tag array |
| 30s s all | Find all snippets with an id that contains all |
| 30s search all | Find all snippets with an id that contains all |
| 30s view merge --cp | View snippet with id merge and copy its code |
| 30s view merge --json | View snippet with id merge and output as JSON |
| 30s search all --layout ce | Find all snippets with an id that contains all and output code and example |
Contributing
Bug reports & feature requests
Please use the issue tracker to report bugs or file feature requests.
Developing
Pull requests are more than welcome. Do the following to start helping out:
- Fork this repository to your own GitHub account and then clone it to your local device.
- Run
npm installin the created directory to install all necessary dependencies.
Optional steps:
- Uninstall
30sif it's already installed:npm uninstall -g 30s - Link it to the global module directory:
npm link
Style guide & conventions
Try to follow functional programming best practices. Use pure functions and Ramda when possible.
Write commits following: Angular Commit Message Conventions. This enables us to automatically release new versions together with semantic-release on fix and feat commit types.
prettier and eslint-config-sqve (a config based on standardjs) enforces our styling and formatting. It runs automatically on pre-commit and is also checked for issues on Travis CI.
Roadmap
See the development board for a detailed development roadmap. Below are a short outline of important improvements:
- Autocomplete with
omelette - Replace
commanderwith basicyargsand own logic
Thanks
A big thank you to the core team and all the contributers at 30-seconds-of-code for creating an awesome curated collection of snippets.
License
Creative Commons License
CC0 1.0 Universal