Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/taq/piparote
Using Ruby methods like Unix pipes.
https://github.com/taq/piparote
Last synced: about 1 month ago
JSON representation
Using Ruby methods like Unix pipes.
- Host: GitHub
- URL: https://github.com/taq/piparote
- Owner: taq
- Created: 2017-08-08T14:29:52.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-08-08T14:30:51.000Z (over 7 years ago)
- Last Synced: 2024-04-25T01:08:12.022Z (8 months ago)
- Language: Ruby
- Size: 47.9 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Piparote
![Piparote](https://github.com/taq/piparote/raw/master/piparote.png)
Another way to use Ruby object methods like pipes.
After reading [an
article](https://6ftdan.com/allyourdev/2017/08/03/elixir-envy-%e1%90%85-ruby/)
about Elixir's pipe operator and some implementation people made on Ruby, I made
this one as an exercise. Not sure if is good for production use.## Installation
Add this line to your application's Gemfile:
```ruby
gem 'piparote'
```And then execute:
$ bundle
Or install it yourself as:
$ gem install piparote
## Usage
You can require the gem, include and use the `Piparote` module like this (here,
using Nokogiri to parse my website):```ruby
require 'uri'
require 'open-uri'
require 'nokogiri'
require 'piparote'include Piparote
include Nokogiriputs 'http://eustaquiorangel.com'.
URI.parse.
open.read.
HTML.parse.
css('h2').
map { |h2| h2.text }.
join(' - ')=> Desenvolvedor, pai, metalhead - Publicado em Developer - E o carro estava na
garagem ... - Driver Driven Development
```## Development
After checking out the repo, run `bin/setup` to install dependencies. Then, run
`rake test` to run the tests. You can also run `bin/console` for an interactive
prompt that will allow you to experiment.To install this gem onto your local machine, run `bundle exec rake install`. To
release a new version, update the version number in `version.rb`, and then run
`bundle exec rake release`, which will create a git tag for the version, push
git commits and tags, and push the `.gem` file to
[rubygems.org](https://rubygems.org).## Contributing
Bug reports and pull requests are welcome on GitHub at
https://github.com/taq/piparote.