Giter Site home page Giter Site logo

slothelle / cryptozoologist Goto Github PK

View Code? Open in Web Editor NEW
13.0 3.0 8.0 282 KB

Ruby gem to generate many ipsums from animals, clothing items, and colors

License: MIT License

Ruby 99.95% Shell 0.05%
lorem-ipsum lorem-ipsum-generator unicorns pygmy-puffs animals sloths

cryptozoologist's Introduction

Cryptozoologist Build Status

Cryptozoologist generates random strings from animal, clothing item, and color pairings, as well as lorem ipsum style sentences.

You could get something like "orange-clownfish-turtleneck" or "magenta-three-toed-sloth-shoe-horn". It's fun and silly, because why not? The gem can be configured to use a custom delimiter, exclude dictionaries, or add in speciality dictionaries.

Installation

Add this line to your application's Gemfile:

gem 'cryptozoologist'

And then execute:

$ bundle

Or install it yourself as:

$ gem install cryptozoologist

Documentation

In addition to the brief overview provided here, you can read more about each method, configuration, and general usage in the Docs section of this repo.

Usage

Cryptozoologist provides some fun stuff:

Custom configuration

More on this in the docs!

cryptozoologist's People

Contributors

andrewmbyrd avatar br3nda avatar carahill avatar isabarros avatar slothelle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

cryptozoologist's Issues

New feature: cities!

Summary

๐Ÿ‘‹ your task, should you choose to accept it, is to add cities to Cryptozoologist.

Acceptance criteria

  • As a user of the Cryptozoologist gem, I can call the method Cryptozoologist.city and be provided with a string that uses the internal dictionaries (your choice which dictionaries!) to make a city name (Slothlandia, Turtleneck City, Unicornville - your choice)
  • As a user of the Cryptozoologist gem, I can find documentation in the README for how to use the new method
  • As someone curious about the Cryptozoologist gem, I can view the version bump for these changes in the CHANGELOG
  • As a contributor to the gem, I can run all of the tests and they pass!

Technical requirements

  • If you want to add a new dictionary, you can, but make sure you follow the current namespacing patterns
  • All new code should be tested, but I welcome in progress PRs for feedback on your code before you write tests (this is optional!)

Failing test for #lorem

@feministy While running the tests for generator_spec found that the test on line 14 failed when generated the following sentence:

White lambskin costume snaps and nightshirt darwin's frog the white tiger the dark salmon swan? Mandrill coral galoshes buxton blue beige caftan the at the buffalo x ray tetra beanie! Bra be there sunbonnet teddy floral white light blue cowboy hat to collared peccary australian shepherd white jackal absolute zero rugby shirt vervet monkey forest green leopard cat?

It occurs because the animal string darwin's frog has a symbol.

New feature: names

Summary

๐Ÿ‘‹ your task, should you choose to accept it, is to add names (like, for people) to Cryptozoologist.

Acceptance criteria

  • As a user of the Cryptozoologist gem, I can call the method Cryptozoologist.name and be provided with a string that uses the internal dictionaries (of your choice) to make a person's name (Petunia Pygmy Puff, Samaria Aquamarine, Akari Jumpsuit)
  • As a user of the Cryptozoologist gem, I can find documentation in the README for how to use the new method
  • As someone curious about the Cryptozoologist gem, I can view the version bump for these changes in the CHANGELOG
  • As a contributor to the gem, I can run all of the tests and they pass!

Requirements

  • If you want to add a new dictionary, you can, but make sure you follow the current namespacing patterns
  • All new code should be tested, but I welcome in progress PRs for feedback on your code before you write tests (this is optional!)
  • Names should reflect multiple countries of origin but should all be expressed with characters that are unicode. Accented characters are ok, but if you choose to add them, note that this may cause problems for some users with their systems.
  • I am concerned that some name/animal or name/color combinations could be incredibly offensive and would like to avoid this. I'm not sure if the best approach is to filter words out of existing dictionaries with a blacklist or create new dictionaries that are only available for this method, or even remove those words from the dictionaries entirely. I haven't done a full audit of the word list recently and I'm happy to take this task on myself as a follow up if you're not sure how to approach it, or aren't comfortable.
  • If you want to use feminine, masculine, or non-gender coded names, that's ok. I'd prefer they be in separate dictionaries - an option to return a name from a specific category is nice to have here as well!

New feature: states!

Summary

๐Ÿ‘‹ your task, should you choose to accept it, is to add states to Cryptozoologist.

Acceptance criteria

  • As a user of the Cryptozoologist gem, I can call the method Cryptozoologist.state and be provided with a string that uses the internal dictionaries (your choice which dictionaries!) to make a state name (Oregoose, Caterpillfornia, New Hamster, Scarlet Carolina - your choice)
  • As a user of the Cryptozoologist gem, I can find documentation in the README for how to use the new method
  • As someone curious about the Cryptozoologist gem, I can view the version bump for these changes in the CHANGELOG
  • As a contributor to the gem, I can run all of the tests and they pass!

Technical requirements

  • If you want to add a new dictionary, you can, but make sure you follow the current namespacing patterns
  • All new code should be tested, but I welcome in progress PRs for feedback on your code before you write tests (this is optional!)

Turn on travis

New feature template

Summary

There's a travis config file -- can someone with the right permissions go to Travis-CI and turn on builds for PRs and branches. then the test will run on every PR

Add contributors guidelines

This should be a markdown file in the root with general instructions on how to contribute:

  • how to add new dictionaries
  • expectations for tests
  • suggesting new feature ideas
  • reporting bugs
  • where to find stuff to work on
  • code of conduct
  • how releasing works (who does it, etc)

Failing test for #random

In generator_spec on line 43 the test fails when random value is:

oceans
gray
asian
giant
hornet
nightshirt

This happens because the animal string asian giant hornet has the word giant which is also in quantity list, so two words from the quantity list are found instead of 1.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.