Coder Social home page Coder Social logo

dashboard's Introduction

reactivesearch.io dashboard

sugar, spice and everything nice

Setup

After cloning this repo, sync the (batteries) submodule via:

git submodule init
git submodule update --recursive --remote

Installation and development

yarn
yarn start

Server will run on port 1357.

dashboard's People

Contributors

anik-ghosh-au7 avatar anshumanv avatar bietkul avatar deepjyoti30 avatar dependabot[bot] avatar jyash97 avatar lakhansamani avatar lohi212 avatar metagrover avatar mohdashraf010897 avatar nikhil-varma avatar savvyshah avatar shahanuj2610 avatar siddharthlatest avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dashboard's Issues

Enhanced Stats View

We can now track more enhanced stats.

  • Start with tracking API calls by type (search, stream, index, settings, ..)
  • Number of docs over time

Interactive tutorial Ux issues

  • We don't mention the allowed characters and the fact that an "Enter" key is required to proceed to the next step. We should have a "Create App" button next to the app name input box.
  • The help message can be: "An app is equivalent to a DB instance. App names are unique and should only contain the characters 'a-z,A-Z,0-9 and -._+$@'."

Improve UI/UX

  • Use https in dejavu for links from dashboard to allow importer script to load correctly
  • Check for elements which are getting blocked
  • Transferring ownership to a user who doesn't exist should show an appropriate message
  • Support importing data and adding data via GUI when creating app
  • Show appropriate message for mobile "Optimized for desktop use"

Deleting an app from a filtered view opens up tutorial

Steps to reproduce:

  1. Create a filtered view with a single app
  2. Delete the app
    // Watch the tutorial start.

The logic we have for starting the tutorial is flawed, we should check for all user apps v/s what is in the current view.

Bug: Mapping failure crashes the entire dashboard

A failure in parsing a mapping property (which is also a potential bug) is causing the entire dashboard to not render.

We should allow the user to navigate to other views even when there's a parse error or a network related error.

Validate: import data

When importing data, validate that the input JSON file is inside an array container. When it's not, show an error screen. Currently, there is no response being shown to the user.

The code for this functionality resides in the importer repo, but we primarily use it inside the dashboard.

We currently show it as a help message but it's hidden behind the help icon.

Add a clone app button

Update the app card view

to show a code-fork icon (with a tooltip of "Clone this App") which redirects the user to the importer app with the from app already selected in a new tab.

set user name and other info in intercom

Now that we are taking the user's profile information, we should also log that into intercom.

There are two scenarios here:

  1. We want to be able to add user's info on login to intercom.
  2. When they update the profile, we want to update that info.

Create App: Feature

Similar to how we show "create credentials", we should show "new app" button, i.e. an input field only appears (inline) when clicked on the "NEW APP" button.

Feature: Help support design

We will show a help icon which will open up the following options for the users:

  1. Ask us anything! ๐Ÿ‘‹
<!--[if lte IE 8]>
<script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/v2-legacy.js"></script>
<![endif]-->
<script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/v2.js"></script>
<script>
  hbspt.forms.create({
	portalId: "4709730",
	formId: "e2465ba7-75c6-4e40-b4be-0c8dfe553bbb"
});
</script>
  1. Get Support! https://appbase.io/pricing/#support

  2. New Updates

Link to Terms & Privacy.

Design Reference:

@jyash97

Chart issue

  • API chart is not showing the data point for 1st of the month.

Dashboard enhancements / issues

Onboarding

  • After the tutorial, the browser UI shows a "missing credentials" error dialog.

Metrics

  • App metrics endpoint throws a 500 error on certain apps.
  • Charts on dashboard don't render well.

UI Polishes

  • There's some bloat which affects the loading time and dashboard performance.
  • Color scheme and UI/Ux behavior doesn't match with the rest of the website.

Billing

  • A 502 error gateway is sometimes thrown by the billing server.

UI for transferring app owernship

  • App ownership can be transferred from https://dashboard.appbase.io/<appname>/team page. Add a "Transfer Ownership" button which takes in an e-mail field to transfer the app's ownership to.

  • Ownership transfer requires a confirmation dialog where the user needs to enter the <appname> before being able to transfer the ownership.

The endpoint for doing this is POST /app/:appid/changeowner. It expects a JSON object with key owner and value as the e-mail id to whom the app's ownership should be transferred to.

Showing active current plan on billing page

When selecting a plan, it shows up as active on the plan page but only when the same (monthly/annually mode is selected). Otherwise, the highlighting disappears.

Example:

Background color for active disappears when in annual plan mode.

Create App has bugs

  • There is no name validation logic in the "app name" field.
  • When an app is created, there is an incorrect request made to the endpoint /app/:app_id, instead of app_id, an app name is being passed.

Add a skip tutorial button

In the dashboard tutorial, add a button with the label "Continue to Dashboard >", which routes the user back to the dashboard and skips the current tutorial screen.

Browser doesn't let a user view app with only read access

It shows the below screen and then doesn't load the page. We should allow a user to see the browser view even when they don't have admin creds.

Step to replicate: Share an app with read-only access. Login via the read-only user to see the data.

Broken v6 Import Process

Currently, the import process for a v6 app is broken. One of the key reasons is the removal of mapping types in v6 apps, where we support passing types in the importer UI.

The types dropdown (and selection) should be disabled for v6 apps. Using the following endpoint https://rest.appbase.io/#6c6eff02-2afd-b1fb-b62d-d8b4a146c0fe, we can check the version of the app.

Instead, we should default to _doc as the type name or when an app's type exists, pick that instead.

v2 launch

In-app views

  • Trial state in reducers + component hooks
  • connect upgrade buttons in in-app views
  • navbar - back button for dashboard (@jyash97)
  • sidebar - add appbase logo (@jyash97)
  • Rename search sandbox to search preview (@jyash97)

@bietkul

  • App overview Screen (@siddharthlatest review and test)
  • Sidebar billing banner - hide it
  • Selected tab status for billing page
  • billing page - current plan status + active plan buttons
  • new charts for analytics [wip]

global

  • Apps sharing endpoint
  • create new app
  • google-analytics + hotjar + hubspot integration (@jyash97)
  • Sort dropdown for apps dashboard - use metrics from redux store - reverse order (@jyash97)
  • interactive tutorial porting
  • Add support for view param in app-dashboard routing
  • share, clone, copy creds, delete button on app cards
  • mobile responsive
  • content changes (in-app views + global) (@siddharthlatest)
  • clusters porting
  • clusters fixes

make batteries dejavu + r-apps friendly

  • Mappings
  • Search preview

Chart disappears when no API call is made in the current month

Rather than the chart disappearing when no API call is made in the current month, it should show the chart with "zero" data points.

The intention for not showing the chart is that when a new user creates an app, they shouldn't see an empty chart and rather see the getting started guides. However, the way it is being applied right now, we replace chart whenever no API calls have been made in this month.

error in README.md

there is a compile error for file dashboard/app/shared/CopyToClipboard.js

line 2
import Clipboard from 'Clipboard';
**should be**
import Clipboard from 'clipboard';

the default url should be http://localhost:8000, not 1357

UI/UX Enhancements

  • Add share icon in app-navbar for shared apps
  • Transform Back icon in app-navbar into a rounded-button
  • Fix Metrics stats limits in dashboard homepage
  • Better Error handling in Onboarding App creation - It renders a static error statement - We need to use server response to render the error message.

Validations and changes to Clusters

We need to support the following:

  • Add support for new regions
  • For the sandbox and hobby plans, restrict to only allow US East region
  • In the clusters info page, the add-ons URLs are not visible (dejavu, mirage, elasticsearch-hq, etc.)
  • When passing the volume to the backend, use the formula of storage / nodes (as storage now represents the net storage available for the cluster)

Remove Mapping section from the sidebar

  • For the moment, we will remove the mapping section from the dashboard. Once importer is ready, the browser view will handle both the importer + data view.
  • Also the current icon for mapping and builder are interchanged. The icon for builder is a lego block.

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.