{"id":27891,"library":"katharos","title":"Katharos","description":"Katharos is a framework for building enterprise user interfaces, focusing on the model and view layers. Current stable version is 1.0.1267. It supports ES5-compliant browsers (IE11 and below not supported). The framework has an ecosystem of supporting libraries, including katharos-router for web application routing. It aims to scale between an integration and a full framework depending on business needs, differentiating by its focus on enterprise complexity management and modular architecture.","status":"active","version":"1.0.1267","language":"javascript","source_language":"en","source_url":"https://github.com/cnsdetroit/katharos","tags":["javascript"],"install":[{"cmd":"npm install katharos","lang":"bash","label":"npm"},{"cmd":"yarn add katharos","lang":"bash","label":"yarn"},{"cmd":"pnpm add katharos","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Routing functionality for web applications","package":"katharos-router","optional":true}],"imports":[{"note":"ESM-only; requires bundler or ES module support.","wrong":"const katharos = require('katharos')","symbol":"Katharos","correct":"import { Katharos } from 'katharos'"},{"note":"Named export; not a default export.","wrong":"import Model from 'katharos'","symbol":"Model","correct":"import { Model } from 'katharos'"},{"note":"Case-sensitive named export.","wrong":"import { view } from 'katharos'","symbol":"View","correct":"import { View } from 'katharos'"}],"quickstart":{"code":"import { Katharos, Model, View } from 'katharos';\n\nconst app = new Katharos();\n\nclass UserModel extends Model {\n  get defaults() {\n    return { name: '', email: '' };\n  }\n}\n\nclass UserView extends View {\n  render() {\n    return `<div>${this.model.name} (${this.model.email})</div>`;\n  }\n}\n\nconst userModel = new UserModel({ name: 'Jane', email: 'jane@example.com' });\nconst userView = new UserView({ model: userModel });\n\napp.render(userView, document.getElementById('app'));","lang":"typescript","description":"Creates a Katharos app with a Model and View, then renders the view into the DOM."},"warnings":[{"fix":"Use 'class MyModel extends Model' instead of 'createModel()'.","message":"The 'createModel' function is deprecated in favor of class-based Model.","severity":"deprecated","affected_versions":">=1.0.0"},{"fix":"Return a new object from the defaults getter each time.","message":"Model defaults are mutable; changes to defaults object affect all instances.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Ensure your target environment is ES5-compliant (not IE11).","message":"Version 1.0 removed support for IE11 and below.","severity":"breaking","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Run 'npm install katharos' and ensure you use the correct import statement: 'import { Katharos } from 'katharos'","cause":"Package not installed or import path incorrect.","error":"Cannot find module 'katharos'"},{"fix":"Use 'import { Katharos } from 'katharos' (curly braces) instead of 'import Katharos from 'katharos'","cause":"Using default import instead of named import.","error":"TypeError: Katharos is not a constructor"},{"fix":"Ensure you pass a model instance: 'new UserView({ model: userModel })'","cause":"View instance not properly initialized with a model.","error":"Cannot read property 'render' of undefined"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}