Svelma is a set of UI components for Svelte based on the Bulma CSS framework.
Much thanks to the Buefy project! It provided the inspiration and lots of code examples for Svelma.. If you like Vue.js and Bulma, check it out.
- Extremely lightweight thanks to Svelte, a compile-only javascript framework. The bundle is
50K
minified,14K
gzipped. - Components can be used independently, so a modern tree-shaking bundler will reduce the final bundle size even further.
- Svelma does not bundle Bulma, so you are free to include it in your project however you wish, themes and all.
Demos and docs live together as a Sapper site.
$ npm install --save bulma svelma
<!-- App.svelte -->
<script>
import 'bulma/css/bulma.css'
import { Button } from 'svelma'
</script>
<Button type="primary">I'm a Button!</Button>
3 Include Font Awesome icons
CDN in your HTML page:
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css"></link>
...or as an npm package imported into your root component:
$ npm install --save @fortawesome/fontawesome-free
<!-- App.svelte -->
<script>
import 'bulma/css/bulma.css'
import '@fortawesome/fontawesome-free/css/all.css'
</script>
If you are doing server-side rendering with Sapper, ou'll need to import the .svelte files directly so that your app can compile them, rather than importing from the compiled module.
i.e.:
import Button from 'svelma/src/components/Button.svelte'
instead of
import { Button } from 'svelma'
- Clone this repo:
git clone https://github.com/c0bra/svelma.git
- Install dependencies:
npm i && (cd docs; npm i)
- Start the automated build and automated docs:
npm run dev
- Open url that console prints in your browser
Code released under MIT license.
Copyright ©, Brian Hann.