egonSchiele/contracts.ruby
Contracts for Ruby. observed · 2026-08-28
Health v2 · maintenance only
75/100
- Activity 95
- Release rhythm 35
- Longevity 100
Flags: no_releases
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 5200
- days_rel: n/a
- days_push: 33
- n_releases_24m: 0
Adoption not part of the score
1457 stars · 82 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
contracts.ruby is a Ruby library for design-by-contract programming, letting you declare one-line contracts above methods that validate arguments and return values. It replaces boilerplate defensive code with clear, declarative checks and detailed contract-violation errors.
Use cases
- validate method arguments and return values in Ruby
- replace defensive boilerplate code with declarative contracts
- get detailed error messages when a method receives wrong types
- add runtime type checking to Ruby classes
- enforce preconditions and postconditions on Ruby methods
When to choose
- you want design-by-contract style validation in Ruby
- you want to cut down on manual argument-checking boilerplate
- you're on Ruby 3.x and want lightweight runtime contracts
When to avoid
- you need static type checking rather than runtime validation
- you're on Ruby 2.x and can't use the 0.16.x line
- the project needs an actively maintained library - it is seeking a new maintainer
Facets
library · maturity maintenance
testing error-handling type-system developer-tools programming-languages ruby design-by-contract contracts runtime-validation assertions
1 source
- readme: https://github.com/egonSchiele/contracts.ruby · fetched 2026-08-28 · d6d8ac630744
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| egonSchiele/contracts.ruby | main | 75 |
For agents
markdown · JSON · MCP: product_card(name="egonSchiele/contracts.ruby")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem