stampit-org/stampit

OOP is better with stamps: Composable object factories.

View on GitHub ↗Jump to charts ↓

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 36 minutes ago
Type:Library / SDKCategory(s):Core & Utility LibrariesLanguages & Runtimes
Added to GitGenius on September 23rd, 2026
Created on February 10th, 2013
Open Issues & Pull Requests: 4 (+0)
GitHub issues: Enabled
Number of forks: 102
Total Stargazers: 3,006 (+0)
Total Subscribers: 69 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 9.5 hours
Mean response time: 15.7 hours
90th percentile: 21.9 hours
Tracked items: 2

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Stampit is a JavaScript library that provides composable object factories through a standardized stamp specification.

The library addresses the complexity of prototypal inheritance in JavaScript by offering a lightweight, composable approach to object creation. Rather than relying on traditional class hierarchies or prototype chains, Stampit uses stamp functions that combine three kinds of prototypal inheritance: delegation, concatenation, and functional inheritance. This allows developers to compose behaviors from multiple sources and create objects with privileged methods and private data in a straightforward way.

Stampit suits projects where flexible object composition matters more than rigid class structures. It works well for codebases that need to mix and match behaviors across unrelated object types without deep inheritance chains. The library is particularly useful when you need to share private data and methods across composed objects, a pattern that is awkward to express with standard JavaScript classes or prototype-based inheritance alone.

The project maintains active development with regular updates across multiple major versions, each introducing breaking changes to align with evolving stamp specification standards. The codebase includes both unit tests and benchmark tests to validate correctness and performance. The library remains minimal in size, delivering its functionality in a small footprint suitable for inclusion in production applications.