All Projects â†’ jamesxwang â†’ vue-hotspot

jamesxwang / vue-hotspot

Licence: MIT license
🖖 vue-hotspot is a Hotspot component for Vue.js.

Programming Languages

Vue
7211 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
shell
77523 projects

Projects that are alternatives of or similar to vue-hotspot

phpmixbill
PHP Mikrotik Billing - Voucher management for Mikrotik Hotspot
Stars: ✭ 134 (+74.03%)
Mutual labels:  hotspot
direct-net-share
share internet via Wifi direct on Android
Stars: ✭ 36 (-53.25%)
Mutual labels:  hotspot
Windows-to-Android-Internet-with-USB-Cable-Reverse-tethering-setup-for-Windows
One click windows to android internet connection (Opposite of Android USB Tethering)
Stars: ✭ 34 (-55.84%)
Mutual labels:  hotspot
wifi-rs
📡 Easily interface and manage wireless networks.
Stars: ✭ 77 (+0%)
Mutual labels:  hotspot
Jitwatch
Log analyser / visualiser for Java HotSpot JIT compiler. Inspect inlining decisions, hot methods, bytecode, and assembly. View results in the JavaFX user interface.
Stars: ✭ 2,545 (+3205.19%)
Mutual labels:  hotspot
Tileview
TileView is a subclass of android.view.ViewGroup that asynchronously displays, pans and zooms tile-based images. Plugins are available for features like markers, hotspots, and path drawing.
Stars: ✭ 1,447 (+1779.22%)
Mutual labels:  hotspot
Jvm
🤗 JVM åē•åą‚原į†æœ€å…¨įŸĨč¯†æ€ģįģ“
Stars: ✭ 7,756 (+9972.73%)
Mutual labels:  hotspot
PiFi
Easily set a raspberry pi's wifi settings in a headless configuration
Stars: ✭ 29 (-62.34%)
Mutual labels:  hotspot
hotspot3d
3D hotspot mutation proximity analysis tool
Stars: ✭ 43 (-44.16%)
Mutual labels:  hotspot
compile-command-annotations
Annotation hints for the Hotspot JVM JIT compiler.
Stars: ✭ 38 (-50.65%)
Mutual labels:  hotspot
keycloak-radius-plugin
Make the radius server as part of keycloak SSO
Stars: ✭ 102 (+32.47%)
Mutual labels:  hotspot
anon-hotspot
On demand Debian Linux (Tor) Hotspot setup tool
Stars: ✭ 34 (-55.84%)
Mutual labels:  hotspot
Kupiki-Hotspot-Admin-Install
Administration dashboard for a hotspot and freeradius 3.x
Stars: ✭ 16 (-79.22%)
Mutual labels:  hotspot
ConsolePi
Raspberry Pi Based Serial Console Server, with PushBullet Notification of IP changes, Automatic VPN termination, custom menu, Power Outlet Control, and a lot more
Stars: ✭ 109 (+41.56%)
Mutual labels:  hotspot
GuideChimp
Create interactive guided product tours in minutes with the most non-technical friendly, lightweight and extendable library.
Stars: ✭ 138 (+79.22%)
Mutual labels:  hotspot
haystack bio
Haystack: Epigenetic Variability and Transcription Factor Motifs Analysis Pipeline
Stars: ✭ 42 (-45.45%)
Mutual labels:  hotspot
grase-www-portal
Grase WWW Portal (Main Package)
Stars: ✭ 50 (-35.06%)
Mutual labels:  hotspot

Vue circle-ci Coverage Status npm License GitHub code size in bytes Version

English | įŽ€äŊ“中文

Introduction

Vue-Hotspot is an image hotspot component for Vue.js.

Installation

npm (Recommended)

$ npm install vue-hotspot --save

yarn

$ yarn add vue-hotspot

Usage

ES Modules with npm (Recommended)

import Vue from 'vue'
import VueHotspot from 'vue-hotspot' // refers to components/VueHotspot.vue in webpack

Using the component

<template>
  <v-hotspot
    :init-options="hotspotConfig"
    @save-data="saveData"
    @after-delete="afterDelete" />
</template>

<script>
import Vue from 'vue'
import VueHotspot from 'vue-hotspot'
export default {
  components: {
    'v-hotspot': VueHotspot
  },
  data () {
    return {
      hotspotConfig: {
        image: 'your-image-url.png',
        editable: true,
        interactivity: 'hover',
        data: [
          { Message: 'A prepopulated hotspot', Title: 'Vue Hotspot 1', x: 33.3, y: 58.33 },
          { Message: 'Another prepopulated hotspot', Title: 'Vue Hotspot 2', x: 53.3, y: 78.3 }
        ],
        hotspotColor: '#85ce61',
        messageBoxColor: '#409eff',
        textColor: '#333',
        opacity: 0.9
      }
    }
  },
  methods: {
    saveData (data) {
      // Do something with the list of hotspots
      console.log(data)
    },
    afterDelete () {
      // Do something after delete
      console.log('Do something after delete ...')
    }
  }
}
</script>

Live Demo

You can see more examples here.

Project Structure

.
├── CHANGELOG.md
├── LICENSE
├── README.md
├── README.zh-CN.md
├── babel.config.js
├── dist                        // folder, build files from src/components
├── docs                        // folder, build files from src/demo
├── jest.config.js              // jest config
├── package-lock.json
├── package.json
├── public                      // folder, demo public files
│   ├── favicon.ico
│   └── index.html
├── publish.sh                  // publish shell script
├── rollup.config.js            // rollup config
├── src                         // folder, src folder
│   ├── components              // folder, main folder
│   │   ├── VueHotspot.vue      // entry file
│   │   ├── module              // folder, module folder
│   │   │   ├── ControlBox.vue
│   │   │   └── DataPoint.vue
│   │   └── utils               // folder, utils folder
│   │       └── common.js
│   └── demo                    // folder, demo files source folder
│       ├── Demo.vue
│       ├── assets
│       │   ├── logo.png
│       │   └── unimelb.jpg
│       ├── components
│       │   ├── ShowCode.vue
│       │   └── Toggle.vue
│       └── main.js
├── tests                       // folder, unit test folder
│   └── unit
│       ├── ControlBox.spec.js
│       ├── DataPoint.spec.js
│       └── common.spec.js
└── vue.config.js               // vue config file

Project Structure

.
├── CHANGELOG.md
├── LICENSE
├── README.md
├── README.zh-CN.md
├── babel.config.js
├── dist                        // folder, build files from src/components
├── docs                        // folder, build files from src/demo
├── jest.config.js              // jest config
├── package-lock.json
├── package.json
├── public                      // folder, demo public files
│   ├── favicon.ico
│   └── index.html
├── publish.sh                  // publish shell script
├── rollup.config.js            // rollup config
├── src                         // folder, src folder
│   ├── components              // folder, main folder
│   │   ├── VueHotspot.vue      // entry file
│   │   ├── module              // folder, module folder
│   │   │   ├── ControlBox.vue
│   │   │   └── DataPoint.vue
│   │   └── utils               // folder, utils folder
│   │       └── common.js
│   └── demo                    // folder, demo files source folder
│       ├── Demo.vue
│       ├── assets
│       │   ├── logo.png
│       │   └── unimelb.jpg
│       ├── components
│       │   ├── ShowCode.vue
│       │   └── Toggle.vue
│       └── main.js
├── tests                       // folder, unit test folder
│   └── unit
│       ├── ControlBox.spec.js
│       ├── DataPoint.spec.js
│       └── common.spec.js
└── vue.config.js               // vue config file

Config Options

options description required default
image Default image placeholder true an empty image with text 'Oops! image not found...'
data Object to hold the hotspot data points.
Data structure: [ {Message: 'String', Title: 'String, x: Float, y: Float'} ]
false []
editable Specify editable in which the plugin is to be used.
true: Allows to create hotspots from UI.
false: Display hotspots from data object
false true
interactivity Event on which the hotspot data point will show up.
allowed values: click, hover, none
false hover
hotspotColor background color for hotspot dots false 'rgb(66, 184, 131)'
messageBoxColor background color for hotspot message boxes false 'rgb(255, 255, 255)'
textColor background color for hotspot text false 'rgb(53, 73, 94)'
opacity opacity for hotspots false 0.8
overlayText text for overlay in edit mode false 'Please Click The Image To Add Hotspots.'

Local development

$ npm i
$ npm run serve

Open http://localhost:8080/ to see the demo.

License

Vue-hotspot component is delivered under the MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].