Code Monkey home page Code Monkey logo

crust_dashboard's People

Contributors

ashwinkumar6 avatar b-zee avatar hitman401 avatar lionel-faber avatar ravinderjangra avatar shankar2105 avatar

Watchers

 avatar  avatar  avatar

crust_dashboard's Issues

BACKEND - issues with app error when user's ip not registered/incorrect

FE team - please ignore. Not sure where BE want their bugs so placing here for now for Nikita, Povilas & Spandan. Will discuss with them on Monday.
Issues with error:

  • still says crustnet.maidsafe.net (Nikita knows about this & probably fixed, but would like to see it tracked & confirmed)
  • the press any key to continue... doesn't work - hitting enter made it panic, but was able to hit other keys without it exiting.

image

Mention of "network" on /update_ip.html

Not a priority bug (IMO), but the word "network" has been explicitly removed from elsewhere in marketing communications, URLs and the dashboard, so ideally wouldn't be mentioned here either.

image

Dashboard display issues on mobile screen sizes - unreadable

Not sure what the requirements are for screen size compatibility, but the dashboard is unreadable for mobiles (esp in portrait mode). I imagine a fair number of users who read the forum post would click the link to the dashboard on their mobiles to see results before they consider trying to connect on their laptops/desktops.
Even at tablet screen size there's some obvious overlap beginning to happen.

Mobile examples for Pixel 2 & iPhone X:
image

image

note I'm using chrome to simulate this

implement OS tab

Implement the OS tab as per design. The charts should change based on the connection result filter

Push the data to the reducer via a new_log action type

New logs will be pushed to the store using an NEW_LOG action. All reducers should have an action type to handle this incoming log. new log should be pushed to the main list only after checking the hash id of the last element to avoid duplicates.

Track table page state in reducer

Add a property in the reducer to track the state of the current page in the table. This helps retain the current page or reset it to the default according to the requirement

Dashboard not displaying if > 1 page (i.e. > 200 connection attempts). Page sticks at loading

This has been happening since Friday - assumed it was because I had created a huge data set (391,814 log entries) but I've deleted all those entries, worked with a couple of entries for a while to test some other parts, then added 365 logs/db entries and it stopped displaying on the dashboard after it moved onto the 2nd page.
Will leave it in this state for FE team to view on Monday morning.

Handle error and present to user

Have error component implemented. The component will take error message as a prop and display the same. will be shown if the error message is set.

Implement table with no filters

Display hash as ID in the table. The data must be rendered according to the global filters. Should have props set max rows.

Functional date range picker

When the date range is picked the logs should be filtered for the selected range and displayed. The selected date range must be represented in the date range field

UI fixes

Sever Paging

  • Handle no logs returned from the server
  • Apply page loading skeleton to only chart and table component instead of the whole page

Filter:

  • Rename EDM_RANDOM to EDM Random in dropDown filter and in the table NAT Type column

Table:

  • For a successful connection use row colour #FFFFFF
  • For a failed connection use row colour #FAFAFA
  • group requester and responder (Allot appopriate spacing)
  • Add right padding to table's paging component

Chart:

  • Change title to Connection Success Rate
  • Display legend towards the right
  • Add label to indicate x-axis Cumulative Attempts

Implement global filters on Main Reducer

Date range & connection results filters must be handled. Group the countries and also group the logs based on All time results and connection results. This will reduce the number of iterations when the filter changes

Strip out identifying geo info

As it stands we will be exposing the following data under the hood of the dashboard for all users, for anyone who wants to dig into it. IMO we don’t need to expose all of this, just country_name is actually required for the dashboard geo info surely? Some of the below doesn’t matter too much, but others such as the org, asn, longitude, latitude and city may spook some people

    "geo_info": {
      "ip": "81.152.169.229",
      "city": "Ayr",
      "region": "Scotland",
      "region_code": "SCT",
      "country": "GB",
      "country_name": "United Kingdom",
      "continent_code": "EU",
      "in_eu": true,
      "postal": "KA7",
      "latitude": 55.45,
      "longitude": -4.6167,
      "timezone": "Europe/London",
      "utc_offset": "+0100",
      "country_calling_code": "+44",
      "currency": "GBP",
      "languages": "en-GB,cy-GB,gd",
      "asn": "AS2856",
      "org": "British Telecommunications PLC"

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.