Create Mobile applications using native widgets via Svelte Svelte and NativeScript.
See https://svelte-native.technology for docs and tutorials
Svelte-Native includes Svelte specific integrations such as
- The ability to use svelte components to create native applications on top of NativeScript core
- Svelte specific navigation and modals eg
navigate({ page: MySvelteComponent }) - Integration with svelte's transistions eg
<label transition:fade="{duration: 2000}"> - Integration with sveltes scoped styles
- Complete coverage of the Nativescript core UI modules
- Uses unmodified Svelte and Nativescript modules
While Svelte Native is feature complete, there are some items outstanding to bring it to the level of other Nativescript library integrations
- Full support for the Progress professional UI components #22
- Improved documentation around importing Nativescript plugins #45
- A Nativescript app template for use with
tns create --template#52 - An examples page that shows open source applications made with Svelte Native #51
- Migrate the site to the latest version of Svelte's SiteKit #53
- At least 1 emoji in readme.md 👍
- More Tests 😳 #54
You can get started developing with this using the latest template app
$ npx degit halfnelson/svelte-native-template myappA fresh Svelte Native app will be found in the myapp folder
Once installed, the build workflow is to use the tns build or tns run commands as normal.
App.svelte
<page>
<actionBar title="Svelte Native"></actionBar>
<stackLayout>
<label text={msg}></label>
<button text="Change" on:tap="{toggle}"></button>
</stackLayout>
</page>
<script>
export let msg = 'Hello World!'
const toggle = () => {
msg = "Hi from svelte"
}
</script>Main.ts
import App from './components/App.svelte';
import { svelteNative } from 'svelte-native'
svelteNative(App, {msg: "Hi from launcher"});The DOM implementation is based on the one from Nativescript-Vue. Thanks! The API Docs were ported from the Nativescript-Vue Too The Site Design is from SvelteJS