By Aaron Kalin
Graffiti is a Regular Expression testing and learning tool. It creates a local web server you can interact with to test and explore Regular Expresison patterns.
Regular Expressions are the universal search language that crosses all language boundries. Most text editors, modern languages and even web sites support Regular Expressions. Graffiti is intended to be a utility and teaching aid to help developers master this artform.
Simply type:
[sudo] gem install graffiti
sudo is optional (and you shouldn't anyway, especially if you use RVM)
- MRI Ruby 1.9.2-p0 or newer
- JRuby 1.6 or newer
- Rubinius 1.2.x or newer
If you would like MRI Ruby 1.8 support, feel free to send a pull request to make this work.
- Sinatra: Web application framework
- Haml: HTML Template language
- Sass: Stylesheet markup language (Specifically, SCSS)
- Thin: Super fast web server
- Trollop: Command line options for Ruby apps
- Rspec: Test Framework
- Aruba: Test Framework for Command Line Applications
- Shotgun: Reloads Sinatra server
- Capybara: Test Matchers for Web Pages
- Rake: Ruby Make, task runner for automated actions
Simply type:
graffiti
Then visit http://localhost:8080/ and start messing with Regular Expressions.
If you use POW, you can symlink graffiti by passing the link option
graffiti -l
You can then visit http://graffiti.dev to use graffiti without having to run the command
You can find other customization options by passing the -h option like so:
graffiti -h
I love the github pull request system and so will you when contributing!
- Fork the repo
- Make a topic branch
- Make a patch (with tests please!)
- Send a pull request
If you need stuff to work on, check the "Issues" section of the github repo. If its a new feature, make it awesome and I'll gladly accept the patch.
I wanted to get this project out there and into everyone's hands to get ideas on where to take this project.
- Better visual matching (Need better styling to display matches)
- Cheat sheet (Help and information on basic/advanced matchers)
- Sample regular expressions (To test)
- Proxy Mode (Turn into a web proxy, do regex matches against incoming pages)