prompt-lists 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +6 -0
  3. data/Gemfile.lock +26 -0
  4. data/LICENSE +33 -0
  5. data/README.md +9 -0
  6. data/lib/prompt_lists.rb +69 -0
  7. data/lists/animal/all.yml +1872 -0
  8. data/lists/animal/bird.yml +918 -0
  9. data/lists/animal/deep-sea.yml +74 -0
  10. data/lists/animal/dinosaur.yml +93 -0
  11. data/lists/animal/dog-breed.yml +670 -0
  12. data/lists/animal/insect.yml +133 -0
  13. data/lists/animal/mammal.yml +186 -0
  14. data/lists/animal/popular.yml +145 -0
  15. data/lists/animal/sea.yml +89 -0
  16. data/lists/architecture/architect.yml +190 -0
  17. data/lists/architecture/extreme-location.yml +49 -0
  18. data/lists/architecture/famous-building.yml +126 -0
  19. data/lists/architecture/home.yml +22 -0
  20. data/lists/architecture/interior-design.yml +39 -0
  21. data/lists/architecture/interior-keywords.yml +104 -0
  22. data/lists/architecture/material.yml +103 -0
  23. data/lists/architecture/style-detailed.yml +104 -0
  24. data/lists/architecture/style.yml +202 -0
  25. data/lists/architecture/term.yml +130 -0
  26. data/lists/art/painting-keyword.yml +74 -0
  27. data/lists/art/painting-technique.yml +98 -0
  28. data/lists/art/pattern.yml +104 -0
  29. data/lists/art/sculpture.yml +74 -0
  30. data/lists/art/style.yml +64 -0
  31. data/lists/art/type.yml +193 -0
  32. data/lists/artist/all.yml +1762 -0
  33. data/lists/artist/common.yml +416 -0
  34. data/lists/artist/concept.yml +37 -0
  35. data/lists/artist/dark.yml +19 -0
  36. data/lists/artist/illustrator.yml +60 -0
  37. data/lists/artist/painter.yml +42 -0
  38. data/lists/artist/with-really-strong-affects.yml +31 -0
  39. data/lists/artist/with-strong-affects.yml +151 -0
  40. data/lists/audio/sound-effect.yml +254 -0
  41. data/lists/audio/voice.yml +102 -0
  42. data/lists/business/brand.yml +291 -0
  43. data/lists/character/action.yml +53 -0
  44. data/lists/character/anime.yml +169 -0
  45. data/lists/character/child.yml +58 -0
  46. data/lists/character/coming-of-age.yml +55 -0
  47. data/lists/character/famous.yml +375 -0
  48. data/lists/character/fantasy.yml +56 -0
  49. data/lists/character/general.yml +109 -0
  50. data/lists/character/monster.yml +116 -0
  51. data/lists/character/romantic.yml +43 -0
  52. data/lists/character/scifi.yml +55 -0
  53. data/lists/character/superhero.yml +101 -0
  54. data/lists/character/supervillain.yml +98 -0
  55. data/lists/cinematic/animation-studio.yml +68 -0
  56. data/lists/cinematic/animation.yml +19 -0
  57. data/lists/cinematic/coloring.yml +39 -0
  58. data/lists/cinematic/director.yml +51 -0
  59. data/lists/cinematic/effect.yml +38 -0
  60. data/lists/cinematic/genre.yml +180 -0
  61. data/lists/cinematic/keyword.yml +24 -0
  62. data/lists/cinematic/moment.yml +220 -0
  63. data/lists/cinematic/movie.yml +147 -0
  64. data/lists/cinematic/shot.yml +58 -0
  65. data/lists/color/all.yml +50 -0
  66. data/lists/color/depth.yml +14 -0
  67. data/lists/color/modifier.yml +58 -0
  68. data/lists/color/pair.yml +29 -0
  69. data/lists/color/palette.yml +77 -0
  70. data/lists/color/perception.yml +25 -0
  71. data/lists/fashion/accessory.yml +157 -0
  72. data/lists/fashion/cultural.yml +102 -0
  73. data/lists/fashion/designer.yml +107 -0
  74. data/lists/fashion/feminine.yml +156 -0
  75. data/lists/fashion/hair-feminine.yml +104 -0
  76. data/lists/fashion/hair-masculine.yml +104 -0
  77. data/lists/fashion/masculine.yml +177 -0
  78. data/lists/fashion/outfit-feminine.yml +65 -0
  79. data/lists/fashion/scifi.yml +54 -0
  80. data/lists/fashion/type.yml +54 -0
  81. data/lists/feeling/all.yml +491 -0
  82. data/lists/feeling/creepy.yml +43 -0
  83. data/lists/feeling/loved.yml +110 -0
  84. data/lists/feeling/melancholy.yml +49 -0
  85. data/lists/feeling/unnerved.yml +46 -0
  86. data/lists/food/bakery.yml +157 -0
  87. data/lists/food/bbq.yml +28 -0
  88. data/lists/food/breakfast.yml +73 -0
  89. data/lists/food/cuisine.yml +104 -0
  90. data/lists/food/fast.yml +149 -0
  91. data/lists/food/fruit.yml +113 -0
  92. data/lists/geography/city.yml +22959 -0
  93. data/lists/geography/country.yml +203 -0
  94. data/lists/geography/ethnic-group.yml +1062 -0
  95. data/lists/geography/language.yml +615 -0
  96. data/lists/geography/nationality.yml +210 -0
  97. data/lists/geography/territory.yml +83 -0
  98. data/lists/interaction/couple-negative.yml +54 -0
  99. data/lists/interaction/couple.yml +53 -0
  100. data/lists/interaction/crowd.yml +48 -0
  101. data/lists/interaction/group.yml +54 -0
  102. data/lists/interaction/individual-detailed.yml +198 -0
  103. data/lists/interaction/individual.yml +408 -0
  104. data/lists/keyword/detailed.yml +44 -0
  105. data/lists/keyword/epic.yml +113 -0
  106. data/lists/keyword/genre.yml +49 -0
  107. data/lists/keyword/glitch.yml +42 -0
  108. data/lists/keyword/modifier.yml +73 -0
  109. data/lists/keyword/negative.yml +73 -0
  110. data/lists/keyword/prayer.yml +53 -0
  111. data/lists/keyword/trending.yml +22 -0
  112. data/lists/keyword/unusual.yml +48 -0
  113. data/lists/music/artist.yml +100 -0
  114. data/lists/music/bpm.yml +24 -0
  115. data/lists/music/composer.yml +176 -0
  116. data/lists/music/drop.yml +24 -0
  117. data/lists/music/dynamic.yml +75 -0
  118. data/lists/music/feature.yml +189 -0
  119. data/lists/music/genre.yml +290 -0
  120. data/lists/music/harmony.yml +24 -0
  121. data/lists/music/instrument.yml +194 -0
  122. data/lists/music/key.yml +24 -0
  123. data/lists/music/melody.yml +81 -0
  124. data/lists/music/mode.yml +41 -0
  125. data/lists/music/mood.yml +103 -0
  126. data/lists/music/percussive.yml +135 -0
  127. data/lists/music/recording.yml +57 -0
  128. data/lists/music/rhythm.yml +13 -0
  129. data/lists/music/song-section.yml +23 -0
  130. data/lists/music/vocal.yml +104 -0
  131. data/lists/nature/area-of-natural-beauty.yml +618 -0
  132. data/lists/nature/flower.yml +501 -0
  133. data/lists/nature/scene-modifier.yml +35 -0
  134. data/lists/nature/scene.yml +68 -0
  135. data/lists/nature/texture.yml +153 -0
  136. data/lists/nature/tree.yml +144 -0
  137. data/lists/nature/tropical-houseplant.yml +90 -0
  138. data/lists/nature/weather.yml +130 -0
  139. data/lists/nature/wood.yml +52 -0
  140. data/lists/people/beautiful-feminine.yml +30 -0
  141. data/lists/people/beautiful-masculine.yml +91 -0
  142. data/lists/people/body-type.yml +101 -0
  143. data/lists/people/celebrity.yml +641 -0
  144. data/lists/people/common.yml +18 -0
  145. data/lists/people/couple.yml +21 -0
  146. data/lists/people/dance.yml +103 -0
  147. data/lists/people/expression.yml +434 -0
  148. data/lists/people/eye-color.yml +30 -0
  149. data/lists/people/festival.yml +43 -0
  150. data/lists/people/group.yml +46 -0
  151. data/lists/people/hobby.yml +281 -0
  152. data/lists/people/job.yml +604 -0
  153. data/lists/people/pose-portrait.yml +29 -0
  154. data/lists/people/pose.yml +153 -0
  155. data/lists/photography/camera.yml +170 -0
  156. data/lists/photography/film.yml +84 -0
  157. data/lists/photography/landscape-keyword.yml +70 -0
  158. data/lists/photography/landscape-subject-detailed.yml +145 -0
  159. data/lists/photography/landscape-subject.yml +114 -0
  160. data/lists/photography/lens.yml +70 -0
  161. data/lists/photography/light.yml +124 -0
  162. data/lists/photography/photographer.yml +948 -0
  163. data/lists/photography/portrait-photographer.yml +68 -0
  164. data/lists/photography/summer-scene.yml +34 -0
  165. data/lists/photography/summer-tropical-beach.yml +54 -0
  166. data/lists/photojournalism/news-extreme.yml +54 -0
  167. data/lists/photojournalism/news-normal.yml +43 -0
  168. data/lists/photojournalism/news-specific.yml +24 -0
  169. data/lists/photojournalism/style-protest.yml +24 -0
  170. data/lists/photojournalism/types.yml +73 -0
  171. data/lists/places/home.yml +87 -0
  172. data/lists/places/public.yml +78 -0
  173. data/lists/places/room.yml +35 -0
  174. data/lists/plot/action.yml +54 -0
  175. data/lists/plot/arthouse.yml +54 -0
  176. data/lists/plot/fantasy.yml +54 -0
  177. data/lists/plot/general.yml +97 -0
  178. data/lists/plot/horror.yml +53 -0
  179. data/lists/plot/musical.yml +54 -0
  180. data/lists/plot/romance.yml +53 -0
  181. data/lists/plot/scifi-cyberpunk.yml +54 -0
  182. data/lists/plot/scifi.yml +173 -0
  183. data/lists/plot/war.yml +54 -0
  184. data/lists/science/astronomy.yml +34 -0
  185. data/lists/science/chemical-element.yml +122 -0
  186. data/lists/science/geometry.yml +93 -0
  187. data/lists/science/medical-images.yml +24 -0
  188. data/lists/set/describe-style.yml +17760 -0
  189. data/lists/set/describe-subject.yml +255734 -0
  190. data/lists/set/parti.yml +1639 -0
  191. data/lists/thing/adjective.yml +54 -0
  192. data/lists/thing/city.yml +193 -0
  193. data/lists/thing/everyday.yml +228 -0
  194. data/lists/thing/fantasy.yml +130 -0
  195. data/lists/thing/gadget.yml +405 -0
  196. data/lists/thing/icon.yml +115 -0
  197. data/lists/thing/office.yml +53 -0
  198. data/lists/thing/scary.yml +193 -0
  199. data/lists/thing/sci-fi.yml +192 -0
  200. data/lists/thing/space.yml +141 -0
  201. data/lists/thing/summer.yml +52 -0
  202. data/lists/time/century.yml +16 -0
  203. data/lists/time/day-of-year.yml +369 -0
  204. data/lists/time/decade.yml +15 -0
  205. data/lists/time/era.yml +91 -0
  206. data/lists/time/time-of-day.yml +34 -0
  207. data/lists/time/year.yml +205 -0
  208. data/lists/typography/feature.yml +46 -0
  209. data/lists/typography/font-type.yml +45 -0
  210. data/lists/typography/font.yml +68 -0
  211. data/lists/typography/style.yml +57 -0
  212. data/lists/typography/word-art.yml +104 -0
  213. data/lists/vehicle/car.yml +309 -0
  214. data/lists/vehicle/classic-car.yml +148 -0
  215. data/lists/vehicle/famous-car.yml +42 -0
  216. data/lists/vehicle/fast-car.yml +81 -0
  217. data/lists/vehicle/type.yml +104 -0
  218. data/lists/video-game/action.yml +300 -0
  219. data/lists/video-game/designer.yml +54 -0
  220. data/lists/video-game/engine.yml +54 -0
  221. data/lists/video-game/game.yml +306 -0
  222. data/lists/video-game/region.yml +104 -0
  223. data/lists/word/adjective.yml +4984 -0
  224. data/lists/word/adverb.yml +1802 -0
  225. data/lists/word/noun.yml +24393 -0
  226. data/lists/word/verb.yml +9954 -0
  227. metadata +299 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c0719a4ca57aa5a503c6b75a3738ab02fa9b5e7b1e39f04342df11e331d60f8b
4
+ data.tar.gz: 2d06005433ed1af9caf552d4a70ece60bffff996ce67e04105ac2113c0a8c478
5
+ SHA512:
6
+ metadata.gz: a11c80a4b2df1b536f0f21a2c982f7671c3d5fb27e553b7be30f17028138c9ae53a843704b221e33f639ad537fcfbf9f3730502b4c74ff3fd4a28817e8949322
7
+ data.tar.gz: 32eebde5492e826b64d77113cdac16d752c38668e415d19965d75524ca800b2eac32d6b3d2e516159d59084d1866d451334621eb05d09bc11e03e9dea284403d
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
4
+
5
+ # Specify your gem's dependencies in replicate-ruby.gemspec
6
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,26 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ prompt-lists (0.0.1)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ byebug (11.1.3)
10
+ coderay (1.1.3)
11
+ method_source (1.1.0)
12
+ pry (0.14.2)
13
+ coderay (~> 1.1)
14
+ method_source (~> 1.0)
15
+
16
+ PLATFORMS
17
+ arm64-darwin-22
18
+ ruby
19
+
20
+ DEPENDENCIES
21
+ byebug
22
+ prompt-lists!
23
+ pry
24
+
25
+ BUNDLED WITH
26
+ 2.5.5
data/LICENSE ADDED
@@ -0,0 +1,33 @@
1
+ Word lists from Spicy-Proton
2
+ https://github.com/schmich/spicy-proton
3
+ Copyright (c) 2017 Chris Schmich
4
+
5
+ ---
6
+
7
+ Cities lists from Datasets
8
+ https://github.com/datasets/world-cities
9
+ Licensed under the Creative Common Attribution License
10
+
11
+ ---
12
+
13
+ The MIT License (MIT)
14
+
15
+ Copyright (c) 2024 @dreamingtulpa
16
+
17
+ Permission is hereby granted, free of charge, to any person obtaining a copy
18
+ of this software and associated documentation files (the "Software"), to deal
19
+ in the Software without restriction, including without limitation the rights
20
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
21
+ copies of the Software, and to permit persons to whom the Software is
22
+ furnished to do so, subject to the following conditions:
23
+
24
+ The above copyright notice and this permission notice shall be included in
25
+ all copies or substantial portions of the Software.
26
+
27
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
28
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
29
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
30
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
31
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
32
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
33
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,9 @@
1
+ # Lists for prompts
2
+
3
+ Categorised lists of things for AI image and media generation for prompt
4
+ generation on [PROMPTCACHE](https://promptcache.com).
5
+
6
+ ## Installation
7
+
8
+ ```ruby
9
+ gem "prompt-lists"
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'yaml'
4
+
5
+ module PromptLists
6
+ VERSION = '0.0.1'
7
+
8
+ class List
9
+ def initialize(file_paths)
10
+ @sublists = file_paths.map do |file_path|
11
+ id = File.basename(file_path, ".yml").gsub("-", "_").to_sym
12
+ Hash[id, file_path]
13
+ end
14
+ end
15
+
16
+ def method_missing(method_name, *args)
17
+ sublist = @sublists.find { |sublist| sublist.key?(method_name) }
18
+ if sublist
19
+ Sublist.new(sublist.values[0])
20
+ else
21
+ super
22
+ end
23
+ end
24
+
25
+ def respond_to_missing?(method_name, include_private = false)
26
+ sublist = @sublists.find { |sublist| sublist.key?(method_name) }
27
+ sublist || super
28
+ end
29
+ end
30
+
31
+ class Sublist
32
+ def initialize(file_path)
33
+ @file_path = file_path
34
+ @content = File.read(@file_path)
35
+ if @content =~ /^(---\s*\n.*?\n?)^(---\s*$\n?)/m
36
+ @items = @content[($1.size + $2.size)..-1].split("\n")
37
+ @metadata = YAML.load($1)
38
+ end
39
+ @metadata = (@metadata || {})
40
+ end
41
+ attr_accessor :metadata, :items
42
+ end
43
+
44
+ class << self
45
+ def method_missing(method_name, *args)
46
+ list_name = method_name.to_s
47
+ if list_exists?(list_name)
48
+ result = load_list(list_name)
49
+ List.new(result)
50
+ else
51
+ super
52
+ end
53
+ end
54
+
55
+ def respond_to_missing?(method_name, include_private = false)
56
+ list_exists?(method_name.to_s) || super
57
+ end
58
+
59
+ private
60
+
61
+ def load_list(list_name)
62
+ Dir["lists/#{list_name}/*.yml"]
63
+ end
64
+
65
+ def list_exists?(list_name)
66
+ Dir.exist?("lists/#{list_name}")
67
+ end
68
+ end
69
+ end