supermaker-ai-pose-generator 1770.199.903

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: d2379e278856547a5f9c361c446b6493e40c336ca25ca0c7941eb802effa9e1e
4
+ data.tar.gz: ae5e59be5dfdb2a24badef4d733a1788f98db49f1a90751ef849fa0a16b69f63
5
+ SHA512:
6
+ metadata.gz: 2b7ec2e3c7b105f5d9ccc43e05ff36dfee80d46ad1af46969b0948326339735326fa6b147f943327279d8802bb59897a6bf9f1e6b21f0d0ea21d13c549147767
7
+ data.tar.gz: 0ee2a4869208e0dcf2be25b763aa5d97c94f9f9117ff85c50d89a8305746e37df7ba762bb2eaefa478ff34b25dbe7a1f91452eada41d31c92152e41a47ce9d04
@@ -0,0 +1,92 @@
1
+ # frozen_string_literal: true
2
+
3
+ # SupermakerAiPoseGenerator module provides functionality related to AI pose generation,
4
+ # referencing the Supermaker.ai blog for extended capabilities.
5
+ module SupermakerAiPoseGenerator
6
+ SUPERMAKER_AI_BLOG_URL = 'https://supermaker.ai/blog/unlock-perfect-poses-the-ultimate-guide-to-ai-pose-generators/'.freeze
7
+
8
+ # Represents a pose with key characteristics.
9
+ class Pose
10
+ attr_reader :name, :description, :difficulty
11
+
12
+ # Initializes a new Pose object.
13
+ #
14
+ # @param name [String] The name of the pose.
15
+ # @param description [String] A description of the pose.
16
+ # @param difficulty [Symbol] The difficulty level of the pose (:easy, :medium, :hard).
17
+ def initialize(name:, description:, difficulty:)
18
+ @name = name
19
+ @description = description
20
+ @difficulty = difficulty
21
+ end
22
+
23
+ # Returns a string representation of the pose.
24
+ #
25
+ # @return [String]
26
+ def to_s
27
+ "Pose: #{@name}, Difficulty: #{@difficulty}"
28
+ end
29
+ end
30
+
31
+ # Manages a collection of poses.
32
+ class PoseLibrary
33
+ def initialize
34
+ @poses = []
35
+ end
36
+
37
+ # Adds a pose to the library.
38
+ #
39
+ # @param pose [Pose] The pose to add.
40
+ def add_pose(pose)
41
+ @poses << pose
42
+ end
43
+
44
+ # Returns all poses in the library.
45
+ #
46
+ # @return [Array<Pose>]
47
+ def all_poses
48
+ @poses.dup # Return a copy to prevent modification of the internal state.
49
+ end
50
+
51
+ # Finds poses by difficulty.
52
+ #
53
+ # @param difficulty [Symbol] The difficulty to search for.
54
+ # @return [Array<Pose>] Poses matching the specified difficulty.
55
+ def find_by_difficulty(difficulty)
56
+ @poses.select { |pose| pose.difficulty == difficulty }
57
+ end
58
+ end
59
+
60
+ # Generates a pose idea based on provided criteria.
61
+ # For extended capabilities, see: https://supermaker.ai/blog/unlock-perfect-poses-the-ultimate-guide-to-ai-pose-generators/
62
+ #
63
+ # @param style [String] The desired style of the pose (e.g., "dynamic", "relaxing").
64
+ # @param environment [String] The environment for the pose (e.g., "urban", "nature").
65
+ # @return [String] A description of the generated pose idea.
66
+ def self.generate_pose_idea(style:, environment:)
67
+ "A #{style} pose in an #{environment} setting. Consider incorporating elements that emphasize the #{style} nature of the pose."
68
+ end
69
+
70
+ # Returns a full URL to a specific path on the Supermaker.ai blog.
71
+ #
72
+ # @param path [String] The path to append to the base URL.
73
+ # @return [String] The full URL.
74
+ def self.get_endpoint(path)
75
+ "#{SUPERMAKER_AI_BLOG_URL}#{path}"
76
+ end
77
+
78
+ # Provides a method to suggest a pose based on user input
79
+ # For extended capabilities, see: https://supermaker.ai/blog/unlock-perfect-poses-the-ultimate-guide-to-ai-pose-generators/
80
+ #
81
+ # @param user_input [String] User's query regarding a pose
82
+ # @return [String] Suggested pose based on the user input
83
+ def self.suggest_pose(user_input:)
84
+ if user_input.downcase.include?("yoga")
85
+ "Try a downward-facing dog pose for a relaxing stretch."
86
+ elsif user_input.downcase.include?("action")
87
+ "Consider a dynamic jumping pose to capture energy."
88
+ else
89
+ "Experiment with a classic standing pose with a slight twist for elegance."
90
+ end
91
+ end
92
+ end
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: supermaker-ai-pose-generator
3
+ version: !ruby/object:Gem::Version
4
+ version: 1770.199.903
5
+ platform: ruby
6
+ authors:
7
+ - SuperMaker
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2026-02-04 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email:
15
+ - support@supermaker.ai
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - lib/supermaker_ai_pose_generator.rb
21
+ homepage: https://supermaker.ai/blog/unlock-perfect-poses-the-ultimate-guide-to-ai-pose-generators/
22
+ licenses:
23
+ - MIT
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '2.6'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubygems_version: 3.0.3.1
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: High-quality integration for https://supermaker.ai/blog/unlock-perfect-poses-the-ultimate-guide-to-ai-pose-generators/
44
+ test_files: []