Through out this application, it is assumed that the user is authenticated and has authorization to perform all the functions in the application.
yarn
yarn start
- Autocomplete for SQL Editor.
- Sublime Key Bindings
- Multiple Workspaces in a single app.
- Clicking the share button will copy the link to space (concept only).
- Double click the title to change the name.
- Import/Export data in CSV and JSON formats.
- Queries will be saved for each workspace.
- Queries can be Bookmarked for later use.
By using the Google Chrome's Lighthouse audit, we are able to measure different metrics of the website. Before making any improvements, these are the results.
The source code was run through webpack (provided by CRA) and the files were minified and compressed using GZip compression. The difference in bundle size is given below.
The whole source code was split into different bundles. This helps to reduce the main bundle size and lazily load the splitted components as needed.
The bundle size after GZip and Code splitting is:
After implementation of lazy loading, around 200ms was saved in all metrics including FCP as shown.
These are the features I wanted to implement, but couldn't due to time constraints.
- Implementing persistant application state.
- Implementing sorting, grouping and aggregation using menus instead of raw SQL.