Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/AlexxNB/svelte-chota

Svelte UI components based on super lightweight chota CSS framework.
https://github.com/AlexxNB/svelte-chota

chota svelte sveltejs ui ui-components ui-kit

Last synced: 13 days ago
JSON representation

Svelte UI components based on super lightweight chota CSS framework.

Awesome Lists containing this project

README

        

# svelte-chota
Svelte UI components based on the super light-weight [chota](https://jenil.github.io/chota/) CSS framework.

[![npm](https://img.shields.io/npm/v/svelte-chota)](https://www.npmjs.com/package/svelte-chota) [![npm](https://img.shields.io/npm/dt/svelte-chota)](https://www.npmjs.com/package/svelte-chota) [![](https://github.com/AlexxNB/svelte-chota/workflows/Publish%20on%20NPM/badge.svg)](https://github.com/AlexxNB/svelte-chota/actions?workflow=Publish+on+NPM) [![](https://github.com/AlexxNB/svelte-chota/workflows/Build%20Documentation/badge.svg)](https://github.com/AlexxNB/svelte-chota/actions?workflow=Build+Documentation)

## Why chota?

When you decide to use [Svelte](https://svelte.dev) in your projects, you expect very tiny bundles of code.

[chota](https://jenil.github.io/chota/) is a super light-weight CSS framework, which adds only ~3kb of gzipped code to your CSS bundle.

[Svelte-chota](https://github.com/AlexxNB/svelte-chota) is a UI kit for easily using [chota](https://jenil.github.io/chota/) in your [Svelte](https://svelte.dev) projects.

## Documentation
* Svelte-chota [documentation](https://alexxnb.github.io/svelte-chota).
* chota [documentation](https://jenil.github.io/chota/).

## Installation

You should install two packages:

* `chota` - css framework itself
* `svelte-chota` - Svelte components for chota

```bash
npm install -D chota svelte-chota
```

Then open the app root file (usually `App.svelte`) and add `chota` import at the top of a `` block:

```html
<script>
import 'chota';
...

```

## Usage

Just import the necessary components from the svelte-chota package in your components:

```html

import {Input,Button} from 'svelte-chota';

Find
```

### Events handlers

You can use any `on:eventname` directive with any components:

```html

import {Button} from 'svelte-chota';
let button_text = 'Hover me';

button_text="Don't touch me!" }
on:mouseleave={ e => button_text="Ok, hover me again" }
>{button_text}
```
### Attributes

Any attribute can be passed to the component, even the `class` attribute.

```html

import {Card} from 'svelte-chota';

Hey!

```