@@ -8,25 +8,38 @@ Gem::Specification.new do |spec|
88 spec . authors = [ "Alex Kholodniak" ]
99 spec . email = [ "alexandrkholodniak@gmail.com" ]
1010
11- spec . summary = "A Ruby gem that provides Rasch, 2PL, and 3PL models for Item Response Theory (IRT), with flexible missing data strategies ."
11+ spec . summary = "Production-ready Item Response Theory (IRT) models with comprehensive performance benchmarking and adaptive optimization ."
1212 spec . description = <<~DESC
13- IrtRuby provides implementations of the Rasch model, Two-Parameter model,#{ " " }
14- and Three-Parameter model for Item Response Theory (IRT).#{ " " }
15- It allows you to estimate the abilities of individuals and the difficulties,#{ " " }
16- discriminations, and guessing parameters of items based on their responses#{ " " }
17- to a set of items. This version adds support for multiple missing data#{ " " }
18- strategies (:ignore, :treat_as_incorrect, :treat_as_correct), expanded#{ " " }
19- test coverage, and improved adaptive optimization.
13+ IrtRuby is a comprehensive Ruby library for Item Response Theory (IRT) analysis,#{ " " }
14+ commonly used in educational assessment, psychological testing, and survey research.
15+
16+ Features three core IRT models:
17+ • Rasch Model (1PL) - Simple difficulty-only model
18+ • Two-Parameter Model (2PL) - Adds item discrimination
19+ • Three-Parameter Model (3PL) - Includes guessing parameter
20+
21+ Key capabilities:
22+ • Robust gradient ascent optimization with adaptive learning rates
23+ • Flexible missing data strategies (ignore, treat as incorrect/correct)
24+ • Comprehensive performance benchmarking suite
25+ • Memory-efficient implementation with excellent scaling
26+ • Production-ready with extensive test coverage
27+
28+ Perfect for researchers, data scientists, and developers working with#{ " " }
29+ educational assessments, psychological measurements, or any binary response data
30+ where item and person parameters need to be estimated simultaneously.
2031 DESC
2132
2233 spec . homepage = "https://github.com/SyntaxSpirits/irt_ruby"
2334 spec . license = "MIT"
2435
25- spec . metadata [ "homepage_uri" ] = spec . homepage
36+ spec . metadata [ "homepage_uri" ] = spec . homepage
2637 spec . metadata [ "source_code_uri" ] = "https://github.com/SyntaxSpirits/irt_ruby"
27- spec . metadata [ "changelog_uri" ] = "https://github.com/SyntaxSpirits/irt_ruby/blob/main/CHANGELOG.md"
38+ spec . metadata [ "changelog_uri" ] = "https://github.com/SyntaxSpirits/irt_ruby/blob/main/CHANGELOG.md"
39+ spec . metadata [ "documentation_uri" ] = "https://github.com/SyntaxSpirits/irt_ruby#readme"
40+ spec . metadata [ "bug_tracker_uri" ] = "https://github.com/SyntaxSpirits/irt_ruby/issues"
2841
29- spec . files = Dir [ "lib/**/*.rb" ]
42+ spec . files = Dir [ "lib/**/*.rb" , "benchmarks/**/*" , "README.md" , "CHANGELOG.md" , "LICENSE.txt" ]
3043 spec . required_ruby_version = ">= 2.6"
3144
3245 spec . bindir = "exe"
@@ -35,7 +48,9 @@ Gem::Specification.new do |spec|
3548
3649 spec . add_dependency "matrix" , "~> 0.4.2"
3750
51+ spec . add_development_dependency "benchmark-ips" , "~> 2.0"
3852 spec . add_development_dependency "bundler" , "~> 2.0"
53+ spec . add_development_dependency "memory_profiler" , "~> 1.0"
3954 spec . add_development_dependency "rake" , "~> 13.0"
4055 spec . add_development_dependency "rspec" , "~> 3.0"
4156end
0 commit comments