├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── bin └── power_metal ├── shard.yml ├── spec ├── power_metal │ └── generator_spec.cr └── spec_helper.cr └── src ├── power_metal.cr └── power_metal ├── generator.cr └── version.cr /.gitignore: -------------------------------------------------------------------------------- 1 | /doc/ 2 | /libs/ 3 | /.crystal/ 4 | /.shards/ 5 | /shard.lock 6 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: crystal 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Marcelo Boeira 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PowerMetal 2 | > PowerMetal Lyric Generator 3 | 4 | ## Usage 5 | 6 | Clone the repository then run: 7 | 8 | ```bash 9 | $ ./bin/power_metal 10 | Blazing Bravely Through Rising Heavens 11 | ``` 12 | * Currently generates only a single sentence 13 | 14 | ## Credits 15 | Based on [Steve T](https://www.youtube.com/channel/UCl16xaNY2arX3OzZBvTlsPQ)'s [video](https://www.youtube.com/watch?v=wpe8eNdpAiM) 16 | 17 | ![Source](http://i.imgur.com/OKqt4DF.jpg "Power Metal Lyric Generator") 18 | 19 | -------------------------------------------------------------------------------- /bin/power_metal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marceloboeira/power-metal/4de9938b8541306e5b30dea6ac910782d8c176be/bin/power_metal -------------------------------------------------------------------------------- /shard.yml: -------------------------------------------------------------------------------- 1 | name: power_metal 2 | version: 0.1.0 3 | 4 | authors: 5 | - Marcelo Boeira 6 | 7 | license: MIT 8 | -------------------------------------------------------------------------------- /spec/power_metal/generator_spec.cr: -------------------------------------------------------------------------------- 1 | require "../spec_helper" 2 | 3 | describe PowerMetal::Generator do 4 | 5 | end 6 | -------------------------------------------------------------------------------- /spec/spec_helper.cr: -------------------------------------------------------------------------------- 1 | require "spec" 2 | require "../src/power_metal/generator" 3 | -------------------------------------------------------------------------------- /src/power_metal.cr: -------------------------------------------------------------------------------- 1 | require "./power_metal/*" 2 | 3 | module PowerMetal 4 | def self.run 5 | puts PowerMetal::Generator.sentence 6 | end 7 | end 8 | 9 | PowerMetal.run 10 | -------------------------------------------------------------------------------- /src/power_metal/generator.cr: -------------------------------------------------------------------------------- 1 | module PowerMetal 2 | VERBS = [ 3 | "Galloping", 4 | "Crying", 5 | "Enlightening", 6 | "Darkening", 7 | "Fly", 8 | "Rise", 9 | "Reflects", 10 | "Climb", 11 | "Burn", 12 | "Redeem", 13 | "Power", 14 | "Guide", 15 | "Standing", 16 | "Blazing", 17 | "Reaching", 18 | "Searching", 19 | ] 20 | 21 | ADVERBS = [ 22 | "Triumphantly", 23 | "Quickly", 24 | "Etternally", 25 | "Brightly", 26 | "Vengefully", 27 | "Corageously", 28 | "Defiantly", 29 | "Gracefully", 30 | "Solemnly", 31 | "Viciously", 32 | "Sorrowfully", 33 | "Bravely", 34 | "Mysteriously", 35 | "Violently", 36 | "Frantically", 37 | "Wildly", 38 | ] 39 | 40 | PREPOSITIONS = [ 41 | "through", 42 | "into", 43 | "above", 44 | "beneath", 45 | "beyond", 46 | "amongst", 47 | "below", 48 | "under", 49 | "in", 50 | "against", 51 | "within", 52 | "inside", 53 | "before", 54 | "outside" 55 | ] 56 | 57 | ADJECTIVES = [ 58 | "Snowy", 59 | "Shining", 60 | "Glowing", 61 | "Ancient", 62 | "Rising", 63 | "Crystal", 64 | "Fantastical", 65 | "Soulful", 66 | "Agressive", 67 | "Corageous", 68 | "Defiant", 69 | "Bloody", 70 | "Cloudy", 71 | "Graceful", 72 | "Misty", 73 | "Icy", 74 | ] 75 | 76 | NOUNS = [ 77 | "Moonlight", 78 | "Darkness", 79 | "Defendors", 80 | "Wings", 81 | "Light", 82 | "Fields", 83 | "Destiny", 84 | "Sun", 85 | "Heavens", 86 | "Souls", 87 | "Sunlight", 88 | "Battle Cry", 89 | "Night", 90 | "Skies", 91 | "Dream", 92 | "Clouds", 93 | "Path", 94 | "Ice", 95 | "Mountain", 96 | "Plains", 97 | "Hearts", 98 | "Stars", 99 | "Fire", 100 | "Lands", 101 | "Abyss", 102 | ] 103 | 104 | class Generator 105 | def self.sentence 106 | "#{VERBS.sample} #{ADVERBS.sample} #{PREPOSITIONS.sample} #{ADJECTIVES.sample} #{NOUNS.sample}" 107 | end 108 | end 109 | end 110 | -------------------------------------------------------------------------------- /src/power_metal/version.cr: -------------------------------------------------------------------------------- 1 | module PowerMetal 2 | VERSION = "0.1.0" 3 | end 4 | --------------------------------------------------------------------------------