smart-obj (npm): Custom object that lets you define default values and value checkers.
Keywords: javascript|smart-obj