Philosophies
  • Duck has no underlying module(s) to import nor external dependencies
  • Duck does not utilize any "behind the scenes" abstractions
  • Duck uses copy-and-paste "recipes" to implement "features"
  • Duck is JavaScript-centric
  • Duck uses plain JavaScript in the most basic form possible while making sense for Duck
  • JavaScript objects simply hold key-value pairs and Duck utilizes that property of JavaScript
  • A component is a manager for data and a DOM element
  • A store is a container for mediating state that exposes getters, setters, and events
  • Stores are as fundamental as components in Duck
  • Duck can be ammended if it can be improved while agreeing with Duck principles
Next, Core