Back to the Basics. Into the Future. https://mcfly.js.org
Find a file
2023-10-10 18:44:15 +02:00
.vscode initial commit 2023-10-07 20:06:23 +02:00
plugins refactor: fs imports 2023-10-10 18:40:12 +02:00
public use .output dir 2023-10-08 09:35:53 +02:00
routes refactor: fs imports 2023-10-10 18:40:12 +02:00
src import WebComponent.js 2023-10-10 18:07:15 +02:00
.editorconfig initial commit 2023-10-07 20:06:23 +02:00
.eslintignore initial commit 2023-10-07 20:06:23 +02:00
.eslintrc initial commit 2023-10-07 20:06:23 +02:00
.gitignore test if no copying 2023-10-08 09:15:10 +02:00
.npmrc initial commit 2023-10-07 20:06:23 +02:00
nitro.config.ts chore: define preset vercel 2023-10-10 18:44:15 +02:00
package-lock.json feat: really crude server:setup logic 2023-10-10 17:49:50 +02:00
package.json feat: really crude server:setup logic 2023-10-10 17:49:50 +02:00
README.md Update README.md 2023-10-09 16:21:33 +02:00
tsconfig.json initial commit 2023-10-07 20:06:23 +02:00

Nitro + Vanilla Custom Elements

This is a Proof of Concept and testing ground for using Nitro and vanilla JS custom elements using my Web Component Base class.

Ambitious Goals

We want a way to:

  1. create web apps with vanilla custom elements
  2. write real .HTML files
  3. no frameworks or reactivity libraries on the browser
  4. server-side pre-rendering
  5. control on when and where JS is downloaded for interactive elements

Special directories

1. src/pages

  • file based routing for .html files
  • directly use custom elements (no registry maintenance needed)

2. src/components

  • custom element constructor class files go here (only .js files for now)
  • all components are automatically registered using their file names (e.g., a hello-world.js component can be used as <hello-world> element)

Setting up

Do the following steps to get you started:

  1. clone project and go into the directory
git clone https://github.com/ayoayco/nitro-web-components.git
cd nitro-web-components
  1. install deps
npm i
  1. run the dev server
npm run dev
  1. open the browser to https://localhost:3000 (or what the dev server said)

More info

This project was generated from Nitro starter guide. Look at the Nitro documentation to learn more.