mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
dc2ef37e17
* fix page for mobile - minor changes. * fix textarea overlay to hide caret and avodi zooming on mobiles. * fix typo. * show keyboard btn if is touch device. * lint fix. * add to API. * mobile keybaord fix andorid blur. * add mobile keybaord toggle. * fix overlay. * mobile keybaord, skip if not a touch device.
1.6 KiB
1.6 KiB
neko-client
Connect to demodesk/neko backend with self contained vue component.
For community edition neko with GUI and plug & play deployment visit m1k1o/neko.
Installation
Code is published to public GitHub npm repository.
# npm command
npm i @demodesk/neko
# yarn command
yarn add @demodesk/neko
Registry setup
# npm command
echo @demodesk:registry=https://npm.pkg.github.com >> .npmrc
# yarn command
echo \"@demodesk:registry\" \"https://npm.pkg.github.com\" >> .yarnrc
Build
You can set keyboard provider at build time, either novnc
or the default guacamole
.
# by default uses guacamole keyboard
npm run build
# uses novnc keyboard
KEYBOARD=novnc npm run build
Example
API consists of accessing Vue reactive state, calling various methods and subscribing to events. Simple usage:
<!-- import vue -->
<script src="https://unpkg.com/vue"></script>
<!-- import neko -->
<script src="./neko.umd.js"></script>
<link rel="stylesheet" href="./neko.css">
<div id="app">
<neko ref="neko" server="http://127.0.0.1:3000/api" autologin autoplay />
</div>
<script>
new Vue({
components: { neko },
mounted() {
// access state
// this.$refs.neko.state.session_id
// call methods
// this.$refs.neko.setUrl('http://127.0.0.1:3000/api')
// this.$refs.neko.login('username', 'password')
// this.$refs.neko.logout()
// subscribe to events
// this.$refs.neko.events.on('room.control.host', (id) => { })
},
}).$mount('#app')
</script>