Commit Graph

15 Commits

Author SHA1 Message Date
Risha Mars db0876a039 Add SpeedMeasurePlugin to measure the speed of webpack builds (#2051) 2019-01-08 17:41:49 -08:00
Risha Mars a397393996
reduce webpack bundle size: replace moment with date-rns (#2035)
Replace the moment.js date library with a smaller one (date-fns).
Has the added advantage that we no longer need to supress all of
moment's locales.
2019-01-04 15:51:22 -05:00
Risha Mars a609dd5894
Reduce webpack bundle size: import lodash by module (#2028)
Imports lodash function individually, eliminate 'import _ from lodash'

This branch replaces imports of all of lodash (import _ from 'lodash' with per
function imports e..g import _isNil from 'lodash/isNil'. This reduces the bundle
size from~520 kb to ~160kb.

I've also taken the opportunity to replace our use of lodash functions with
native js functions where it makes sense (e.g. some maps, concats, sizes).
2019-01-03 13:50:46 -05:00
Risha Mars d48a473985
Remove less and post-css from the project (#2002)
Since we've switched to using css-in-js styling with material, we have very
little need for additional css libraries so support our ~30 lines of css. I'm
removing them in favour of a simpler configuration and inline styles.
2018-12-19 16:34:04 -08:00
Risha Mars 0318590c07
Start reducing webpack bundle size, fix minor bugs (#1995)
- Adds bundle analyzer so we can see the composition of our bundle. 
- Stop importing all the locales of moment.js 
- Use named imports for all places we use material-ui components
- Fix a bug where, due to the controller components being relabled
linkerd-, the service mesh page wasn't showing the correct statuses. 
- Fixes some eslint warnings on tests
2018-12-19 12:51:02 -08:00
Risha Mars e69da1b8a8
Move the dashboard's component library from antd to material-ui (#1776)
Switch the dashboard's component library from antd to material-ui.

There are extensive changes to most of the frontend components in the app.

This branch changes all uses of antd components to their closest equivalent in
material. There is still a lot of polish that needs to go into the look of
individual components, but since the major component rewrites are done, I think
get this work in so that further work can be done in smaller branches.

Changes in this branch:

- add Material-UI 3.2.2 to the project
- replace all uses of antd with material-ui components
- remove antd from the project
- slight modifications of eslint rules 
- restructuring of app components to be rendered under the Navigation 
component 
- deleted most of our css (replaced with material's inline styles) 
- pinned package versions in package.json (mostly removing ^)
2018-10-19 11:23:43 -07:00
Dennis Adjei-Baah 20e1e6f2c1
Change breadcrumb header to default font in styles.css (#1633)
* change breadcrumb header to default font in styles.css
* change font weight for header to global font weight
* adjust height pixels and set global font to Lato

Signed-off-by: Dennis Adjei-Baah <dennis@buoyant.io>
2018-09-12 14:57:59 -07:00
Risha Mars 9821b97326
Delete remaining conduit logo; add linkerd favicon (#1343)
- Remove a conduit image from our img folder
- Add a linkerd favicon, should no longer get the favicon not found console error
- Configure webpack to not hash image names
2018-07-18 17:27:57 -07:00
Risha Mars df0bab80b4
Upgrade to webpack 4 and webpack-dev-server 3 (#1138)
Speeds up performance of webpack-dev-server.
2018-06-18 14:38:38 -07:00
Risha Mars 72415d173e
Allow webpack to compile on lint error (#1104)
Add an emitWarning to the webpack config so that webpack will compile despite lint 
errors when running in development mode. This is necessary to enable development 
on the frontend using webpack-dev-server's automatic reloading.

Also sets a NODE_ENV in travis.yml so that the build will fail if linting fails.
2018-06-14 11:26:59 -07:00
Thomas Rampelberg 55d7228959
Enable cheap source-map by default (#977)
Debugging issues in the dashboard is a little frustrating without source maps and the full source map takes awhile to build.

Just enables one of the cheaper source maps by default. It is good enough (tm) for what is there now.
2018-05-22 07:39:18 -07:00
Kim Christensen bcc4f9ec94 Optimize frontend assets to improve load times (#378) (#945)
The frontend assets was not optimized, resulting in suboptimal page load times.

Enabled webpack production mode in the Dockerfile, this still allows good development
and debugging experience when running the web interface locally during development.
Also added minification of the CSS handled by css-loader.

The web interface still works as expected.
The size of the JS file has been reduced from 3.6 MB to 1.2 MB.
And the CSS minification has resulted in sidebar.css from 5.71 kB to 4.33 kb,
and styles.css from 4.18 kB to 3.1 kB.

Fixes #378

Signed-off-by: Kim Christensen <kimworking@gmail.com>
2018-05-14 16:16:23 -07:00
Risha Mars 8cf1bdbee3
Consolidate api calling from the UI; Start surfacing API errors (#65)
* Adds an ApiHelpers module that wraps our api calls to the server

* Adds ability to display error messages from the server
2017-12-21 15:18:35 -08:00
Kevin Lingerfelt 372038f896
Add linting to js and jsx files (#29)
* Add linting to js and jsx files

* Fix BarChart percentages

* Fix merge issue

* Add indent rule

* Quote poperty names
2017-12-08 16:39:29 -08:00
Oliver Gould b104bd0676 Introducing Conduit, the ultralight service mesh
We’ve built Conduit from the ground up to be the fastest, lightest,
simplest, and most secure service mesh in the world. It features an
incredibly fast and safe data plane written in Rust, a simple yet
powerful control plane written in Go, and a design that’s focused on
performance, security, and usability. Most importantly, Conduit
incorporates the many lessons we’ve learned from over 18 months of
production service mesh experience with Linkerd.

This repository contains a few tightly-related components:
- `proxy` -- an HTTP/2 proxy written in Rust;
- `controller` -- a control plane written in Go with gRPC;
- `web` -- a UI written in React, served by Go.
2017-12-05 00:24:55 +00:00