0.11.3 • Published 3 years ago

danza v0.11.3

Weekly downloads
9
License
ISC
Repository
-
Last release
3 years ago

Danza

A Node script for building websites using Synergy Web Components.

Danza expects a couple of things from your project...

  1. you will have a pages folder, containg an html file for each page in your site.
  2. you will have a components folder, containing a folder for each Custom Element

An example project folder structure...

YourProject
|
|_components
    |
    |_ header
        |
        |- index.html
        |- header.spec.js
        |
|_ pages
|   |
|   |- index.html
|   |- about.html
|   |

components/

Danza assumes that your component...

  1. will be described within a script within an HTML file (as an HTML fragment rather than a document)
  2. will be self-initialising (e.g., defines itself with the Custom Elements registry)

Here's a simple component example:

<script type="module">
  import { define } from 'https://unpkg.com/synergy';

  define('x-foo', ({ title = '' }) => {
    return {
      title,
    };
  }, document.getElementById('foo'));
</script>
<template id="foo">
  <h1>{{ title }}</h1>
</template>

pages/

Each page is just a standard HTML file. Danza will inject the definitions for each of the components you use on a page just before the closing body tag so you can use any of the Custom Elements defined within your /components folder as if they were built-in elements.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Made with Danza</title>
  </head>
  <body>
    <x-foo title="bar"></x-foo>
  </body>
</html>

commands

  • danza dev - Compiles all of your pages and then servers them over HTTP using an Express server with hot reloading.

  • danza build - Compiles all of your pages and then saves them in the public folder.

  • danza test - Loads all *.spec.js files inside your component folders (components/**/*.spec.js) and compiles them into a Mocha test suite with all of your local Custom Elements registered and available to use within your tests. The tests are run in a headless Chrome instance and the output is printed at the terminal.

0.11.0

3 years ago

0.11.1

3 years ago

0.11.2

3 years ago

0.11.3

3 years ago

0.10.0

4 years ago

0.9.0

4 years ago

0.8.7

4 years ago

0.8.6

4 years ago

0.8.5

4 years ago

0.8.4

4 years ago

0.8.3

4 years ago

0.8.1

4 years ago

0.8.2

4 years ago

0.8.0

4 years ago

0.7.3

4 years ago

0.7.1

4 years ago

0.7.0

4 years ago

0.6.2

4 years ago

0.6.1

4 years ago

0.6.0

4 years ago

0.5.0

4 years ago

0.4.0

4 years ago

0.3.0

4 years ago

0.2.0

4 years ago

0.1.0

4 years ago