@sme.up/ketchup
v11.0.0-SNAPSHOT-20241220155415
Published
Sme.UP web components library
Downloads
8,371
Readme
Ketchup: super-rich components for web applications
About Ketchup
Ketchup is a web components library, built with Ionic’s Stencil, a TypeScript based web component compiler.
Web Components
is a suite of different technologies allowing to create reusable custom elements that you can use in your web apps. For more information visit this link: https://developer.mozilla.org/en-US/docs/Web/Web_Components
The primary focus of Ketchup is to provide a suite of powerful and customizable Web Components, whose main objective is abstracting complex and recurrent programming patterns.
Built with
How the repo is organized
Ketchup repository is a monorepo multi-package repository managed with Lerna.
- packages/ketchup contains the Stencil web components library
- packages/ketchup_showcase contains the code of the components showcase (a Vue application built using Vue CLI)
- docs contains documentation(back to top)
Showcase
Go to Ketchup Showcase to see our components live.(back to top)
Getting started
All information for developers is to be found in the Development guide.
How to use Ketchup in your project
- Add the dependency:
npm install "@sme.up/ketchup" --save
- Define Ketchup custom elements in your pages:
import { defineCustomElements } from '@sme.up/ketchup/dist/loader';
defineCustomElements(window);
- Use Ketchup components in your pages. About components and their props and events see Ketchup Showcase. A simple sample for a Ketchup button can be:
<kup-button label="I'm a button" @kup-button-click="myButtonAction" />
Contributing
In order to keep the code under control, if you want to contribute you must have knowledge of the following fundamentals:
- Git (how branching works, scoped commits and clear pull requests);
- Deep understanding of TypeScript, Sass and JSX (the core of the library);
- Basic understanding of Vue2 (this is only for the showcase, yet still important because components must be showcased once created).
If you respect this prerequisites and you wish to contribute to this project, you're welcome to do so. Check out our style guide for more details about our coding practices.
Issues
If you run into an error or an unexpected behavior, or you just want to give us feedback on how to improve, feel free to use the issues page.(back to top)
License
Distributed under the Apache 2.0 License. Click here for more information.(back to top)
Credits
List of open source libraries/resources we used and which we'd like to thank: