Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/petitatelier/web-components-starter
A starter project for a collection of Web Components — managed with Lerna, as a monorepo
https://github.com/petitatelier/web-components-starter
mono-repository starter-kit webcomponents
Last synced: 3 days ago
JSON representation
A starter project for a collection of Web Components — managed with Lerna, as a monorepo
- Host: GitHub
- URL: https://github.com/petitatelier/web-components-starter
- Owner: petitatelier
- License: bsd-3-clause
- Created: 2019-02-19T19:31:24.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T16:15:53.000Z (almost 2 years ago)
- Last Synced: 2024-11-08T04:10:40.905Z (about 2 months ago)
- Topics: mono-repository, starter-kit, webcomponents
- Language: Shell
- Size: 1.39 MB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# My Web Components collection
[![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lernajs.io/) [![npm latest version](https://img.shields.io/npm/v/@my-org/my-component-collection.svg)](https://www.npmjs.com/package/@my-org/my-component)
A collection of Web Components, to (compose an awesome web app).
## Status
(Enter the development status here.)
## Setup
$ npm run bootstrap
## Demos
Start the local HTTP dev server and visit http://localhost:8081/demos/:
$ npm run dev
## Publish
Rebuild the package distributions:
$ npm run build
Publish the built packages to NPM:
$ npm run publish
---
## About the Web Components starter
Use this mono-repository as a _starting project template_, to create, publish on NPM and maintain a _collection_ of Web Components.
Every web component is in its own package in the [`packages/`](packages/) folder and the [`demos/`](demos/) folder contain example usage of each of them; or of the components together.
### Usage
Clone this repository and bootstrap the project as mentioned above.
### Features
* Uses [Lerna](https://lernajs.io) to manage the multiple packages;
* [Lit-Element](https://lit-element.polymer-project.org) as the base class to create your Web Components;
* [Polyserve](https://github.com/Polymer/tools/tree/master/packages/polyserve) as the local development HTTP server;
* and [Rollup.js](https://rollupjs.org/guide/en) to produce ESM/CJS builds of the packages.### Design notes
We wanted a _quite minimal_ starter template, that would allow us to 1. create a collection of Web Components; 2. test & exercise & refine them with examples; 3. and easily publish them on NPM.
This template was inspired by [@material-components/material-components-web-Components](https://github.com/material-components/material-components-web-components) monorepo.
It can/should be extended with a custom build and your preferred testing toolchain — have a look at [@PolymerLabs/start-lit-element](https://github.com/PolymerLabs/start-lit-element) for a custom build; and [@material-components/material-components-web-Components](https://github.com/material-components/material-components-web-components) for examples and inspiration for tests and an evolved build pipeline.