Coder Social home page Coder Social logo

cengler / elasticvue Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cars10/elasticvue

0.0 1.0 0.0 2.39 MB

Elasticsearch frontend

Home Page: https://elasticvue.com

License: MIT License

JavaScript 38.66% HTML 0.20% Vue 56.84% CSS 2.54% Shell 1.57% Dockerfile 0.19%

elasticvue's Introduction

elasticvue

Build Status Dependency Status Chrome web store Firefox addon Docker build

Elasticsearch frontend for your browser https://elasticvue.com

Screenshot

Contents

  1. About
  2. Usage
  3. Browser support
  4. Troubleshooting
  5. Comparing with other frontends
  6. Development

About

Elasticvue is a frontend for elasticsearch allowing you to search and filter your clusters data right in your browser.

It officially works with the following elasticsearch versions:

  • 5.6
  • 6.8
  • 7.0
  • 7.1
  • 7.2

Other versions might or might not work, elasticsearch-js will fallback to the 7.2 api if an unsupported version is used.

Features

  • Cluster overview
  • Index management
  • Searching and filtering documents
  • Manually running any query against your cluster
  • Snapshot + repository management
  • Utilities, e.g. deleting all indices

Usage

Running

You can use one of the following ways to run elasticvue:

Online version

Visit http://app.elasticvue.com or https://app.elasticvue.com.

Docker

Use the existing image:

Or build the image locally:

  • Checkout the repo git clone https://github.com/cars10/elasticvue.git
  • Open the folder cd elasticvue
  • Build docker build -t elasticvue .
  • Run docker run -p 8080:8080 elasticvue

Then open http://localhost:8080 in your browser.

Browser extensions

Start elasticvue by clicking on the icon in your toolbar.

Run locally

  • Checkout the repo git clone https://github.com/cars10/elasticvue.git
  • Open the folder cd elasticvue
  • Install dependencies yarn install
  • Run a production server via yarn prod or dev server yarn serve

Alternatively run yarn build and host the assets yourself. Example nginx config:

server {
  listen 80;
  server_name yourdomain.com;
  root /var/www/elasticvue_app/dist;
  location / {
    try_files $uri $uri/ /index.html?$args;
  }
}

See the official vuejs deployment guide for more details.

Elasticsearch configuration

You have enable CORS to allow connection to your elasticsearch cluster, even if you run the app locally.

Find your elasticsearch configuration (for example /etc/elasticsearch/elasticsearch.yml) and add the following lines:

# enable CORS
http.cors.enabled: true

# Then set the allowed origins based on how you run elasticvue. Chose only one:
# for docker / running locally
http.cors.allow-origin: "http://localhost:8080"
# online version
http.cors.allow-origin: /https?:\/\/app.elasticvue.com/
# chrome extension
http.cors.allow-origin: "chrome-extension://hkedbapjpblbodpgbajblpnlpenaebaa"
# firefox extension
http.cors.allow-origin: "moz-extension://4b05c928-89bb-4a48-af52-b871f123a06b"

# and if your cluster uses authorization you also have to add:
http.cors.allow-headers : X-Requested-With,Content-Type,Content-Length,Authorization

You can also use a regex to enable all sources at once:

http.cors.allow-origin: /(http:\/\/localhost:8080)|(chrome-extension:\/\/hkedbapjpblbodpgbajblpnlpenaebaa)|(moz-extension://4b05c928-89bb-4a48-af52-b871f123a06b)|(https?:\/\/app.elasticvue.com)/

After configuration restart your cluster and you should be able to connect.

Browser Support

Development is done on chrome. Firefox, safari and edge should work but are mostly untested.

IE Edge Safari Firefox Chrome
None 16+ 11+ 50+ 50+

Troubleshooting

Before opening an issue please try to reset elasticvue to its default settings. To reset please click Disconnect and reset in the footer, this will reset all your saved filters and you have to reconnect to your cluster. Feel free to open an issue if your problem persists.

Comparing with other frontends

See the Wiki. Comparing to other frontends

Development

Setup and running

# clone
git clone https://github.com/cars10/elasticvue.git
cd elasticvue

# install dependencies
yarn install

# serve with hot reload at localhost:8080
yarn serve

# tests
yarn test:unit   # add --watch to watch test files

# for e2e tests you need a running elasticsearch server on port 9123
yarn test:e2e    # add --headless for headless mode

Other commands

# inting
yarn lint

# minimized build for production
yarn build

# create bundle size report at dist/report.html, dist/legacy-report.html
yarn build --report

Building the chrome/firefox extensions: (Hint: you need web-ext for the firefox extension to build)

yarn build_browser_extensions

TODO

1.0

  • refactor runRequest to use promises
  • document, index, snapshot repo and snapshot: add edit/delete
  • catch elasticsearch 5xx errors

Future

  • cluster settings
  • data import/export

Internal stuff and refactorings

  • add more specs
  • refactor vuex state to use actions?
  • performance - use web workers? wasm? requestIdleCallback?

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.