Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ionic-team/stencil-app-starter

(Moved) Minimal starter project for building web components with Stencil
https://github.com/ionic-team/stencil-app-starter

Last synced: about 1 month ago
JSON representation

(Moved) Minimal starter project for building web components with Stencil

Awesome Lists containing this project

README

        

# Stencil App Starter

:warning: :package: This project has moved to the Stencil Community :package: :warning:

This project has been moved to the Stencil Community.
Going forward, it will be maintained by members of the Stencil community, rather than Ionic.
Please see the [new repository](https://github.com/stencil-community/stencil-app-starter) for updates to the application starter going forward.

This repository has been kept in readonly/archive mode for users of v1/v2 of the create-stencil CLI (`npm init stencil`).
As of create-stencil v3, the application starter will use the community maintained version.

The documentation below is kept for historical purposes only.

---

Stencil is a compiler for building fast web apps using Web Components.

Stencil combines the best concepts of the most popular frontend frameworks into a compile-time rather than run-time tool. Stencil takes TypeScript, JSX, a tiny virtual DOM layer, efficient one-way data binding, an asynchronous rendering pipeline (similar to React Fiber), and lazy-loading out of the box, and generates 100% standards-based Web Components that run in any browser supporting the Custom Elements v1 spec.

Stencil components are just Web Components, so they work in any major framework or with no framework at all. In many cases, Stencil can be used as a drop in replacement for traditional frontend frameworks given the capabilities now available in the browser, though using it as such is certainly not required.

Stencil also enables a number of key capabilities on top of Web Components, in particular Server Side Rendering (SSR) without the need to run a headless browser, pre-rendering, and objects-as-properties (instead of just strings).

## Getting Started

To start a new project using Stencil, clone this repo to a new directory:

```bash
npm init stencil app
```

and run:

```bash
npm start
```

To build the app for production, run:

```bash
npm run build
```

To run the unit tests once, run:

```
npm test
```

To run the unit tests and watch for file changes during development, run:

```
npm run test.watch
```