# SvelteKit Installation You will need to install the packages you use individually as well as the theme package. Note: After you install a new package, you will need rebuild your themes and restart SvelteKit. ```sh npm install --save-dev @smui/button npm install --save-dev @smui/card # etc... npm install --save-dev smui-theme ``` Create your theme files with `smui-theme`. ```sh npx smui-theme template src/theme ``` You can [modify your theme variables](/THEMING.md#theme-variables) in the files now in `src/theme` and `src/theme/dark`. You can also add the [Material typography styles](/TYPOGRAPHY.md). ## Theme Build Scripts You'll need one of these sets of prepare scripts in your `package.json` file. With Dark Mode support. ``` "prepare": "npm run smui-theme-light && npm run smui-theme-dark", "smui-theme-light": "smui-theme compile static/smui.css -i src/theme", "smui-theme-dark": "smui-theme compile static/smui-dark.css -i src/theme/dark" ``` Or, without Dark Mode support. ``` "prepare": "npm run smui-theme", "smui-theme": "smui-theme compile static/smui.css -i src/theme" ``` ## Stylesheets Now in your `src/app.html` file, add the following to the `head` section: With Dark Mode support. ```html ``` Or, without Dark Mode support. ```html ``` ### Fonts Material uses the Roboto fonts, so be sure to include these stylesheets (or include them from a package). ```html ``` ### Icons The easiest way to get Material icons is the font. If you'd like to use the Material Icons font, include that, also in the `head` section. ```html ``` However, you can get a greatly expanded icon library and reduce over-the-wire sizes by using [the MDI library](https://pictogrammers.com/library/mdi/) instead. ```sh npm install --save-dev @mdi/js ``` You can see how to use these icons on the "Using SVGs" demo on the [Icon Button demo page](https://sveltematerialui.com/demo/icon-button/). ## Finishing Up After that, run `npm run prepare` to build your CSS file, then you can run `npm run dev` to start developing. Happy coding! ## Adding More SMUI Packages Whenever you add a new SMUI package, run `npm run prepare` again to rebuild your CSS file with the new component's styles included.