- terminal 1
npm run start-dev-just-rollup
- terminal 2
npm run start-dev-tsc-wds-1
in package.json
"main": "dist/app.js", // non-js modules
"module": "dist/app.js", // uses es modules
"types": "dist/types.d.ts", // for typescript
"context": "browser", // generate es modules?
let test = document.createElement('p')
console.log(test.isConnected) // false
document.body.appendChild(test)
console.log(test.isConnected) // true
this.innerHTML // -> create element in regular DOM
this.shadowRoot.innerHTML // -> create content in shadow DOM
In a wc, it's possible to update each attribute only when its changed for more performance. Must manually do this or look into a differ, or just use a pre-made component for complex stuff like a spreadsheet.
-
start the server and shows tsc compiler errors
- Term 1 ->
npm run start-dev-tsc-wds-1
- Term 1 ->
-
starts the rollup build watcher
- Term 2 ->
npm run start-dev-rollup-2
- Term 2 ->
Google Auth
- Requires OAuth Login
npm run serve-ngrok-oauth
ngrok http http://localhost:8000 --oauth=google --oauth-allow-email=realityexpander@gmail.com
- note: can add up to 5 emails on free plan
Basic Auth
- Simple Basic-Auth login
npm run serve-ngrok-basicauth
ngrok http http://localhost:8000 --basic-auth user:password
-
SMART elements
-
Simple Router
-
HTML Elements Templates (admin)
-
SMART site templates
-
Modern Web - Using Web Components Guide
-
LIT Playground
-
Material-components material-components-web (MDC)
-
Vite (more sophisticated rollup)
-
Parcel
-
ES6 Bare Module Imports
-
10 Must know CSS tricks
-
25 JavaScript Tricks You Need To Know About (Part 1 & 2)
-
Vaadin
-
9 Web Components UI Libraries You Should Know in 2021
-
Dark Mode Toggle
-
Awesome Standalones - A curated list of awesome framework-agnostic standalone web components
-
++ Shoelace Components
- Great one-offs
- https://shoelace.style/components/mutation-observer
- QR Code - https://shoelace.style/components/qr-code
- Image Comparer - https://shoelace.style/components/image-comparer
- Color Picker - https://shoelace.style/components/color-picker
- Skeletons - https://shoelace.style/components/skeleton
- Dialogs - https://shoelace.style/components/dialog
- Alerts - https://shoelace.style/components/alert
- Pulsating Badges - https://shoelace.style/components/badge
- Carousels - https://shoelace.style/components/carousel
- Details - https://shoelace.style/components/details
- Divider - https://shoelace.style/components/divider
- Drawer - https://shoelace.style/components/drawer
- Dropdown - https://shoelace.style/components/dropdown
- Bootstrap Icon - https://shoelace.style/components/icon
- Progress Bar - https://shoelace.style/components/progress-bar
- Progress Ring - https://shoelace.style/components/progress-ring
- Rating - https://shoelace.style/components/rating
- Select (like menu) - https://shoelace.style/components/select
- Progress Spinners - https://shoelace.style/components/spinner
- Split Panels - https://shoelace.style/components/split-panel
- Switch - https://shoelace.style/components/switch
- Tab Group - https://shoelace.style/components/tab-group
- Tags & Pills - https://shoelace.style/components/tag
- ToolTip - https://shoelace.style/components/tooltip
- Tree (collapsing outline) - https://shoelace.style/components/tree
- Animated Image - https://shoelace.style/components/animated-image
- Animation - https://shoelace.style/components/animation
- Format Bytes - https://shoelace.style/components/format-bytes
- Format Date - https://shoelace.style/components/format-date
- Include External html - https://shoelace.style/components/include
-
HTML with Superpowers
-
PatternFly Elements
- Clipboard Copy - https://patternflyelements.org/components/clipboard-copy/
- Code Blocks - https://patternflyelements.org/components/code-block/
- Progress Steps - https://patternflyelements.org/components/progress-stepper/
-
https://m2.material.io/components/snackbars/web#installation
-
mdc.xxx source code
- Testing Web Components with Cypress and TypeScript
- How to use Cypress to write E2E Tests over a Registration Page
- Cypress Docs
- Dashboard
-run local cypress test
- npx cypress run --record --key 3fb68fff-d21a-4abe-817a-ef31d8303087
-
Async - Async is a utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript.
-
Axios - A better fetch
- Animating Custom Charts 2021 - #FrameworkLess - 20 lines code - Native Web Components
- Custom Web Component Behaviours and Events