This is an online SQL editor built especially for the frontend task of Atlan's front-end internship. This particular project is built using Svelte, and SCSS. NOTE: Addition to using components, I'm using modularized class names such as FancyInput, FancySelect, and so forth for styling.
git clone https://github.com/madhusriram012/atlan_sql_front.git
To add node_modules, type npm install in terminal.
cd atlan_sql_front
npm install
If error persists while running the above command ,simply delete the node_modules folder and repeat the process.
npm run dev
After running the above command, open http://localhost:5173 to view it in your browser.
The JavaScript framework I chose was SVELTE as it is better for smaller, more dynamic projects. Svelte is considered one of the fastest JavaScript frameworks and it is faster than React. It uses a compiler that does most of the work during build time, so there's no need to use a virtual DOM. Svelte shifts much of the work from the browser to the build process. This means that the framework itself is not included in the final bundle sent to the browser, resulting in smaller and more efficient runtime code.
The Major plugins or packages installed are gridjs, gridjs-svelte, papaparse, to-json-schema.
Websites used to check : 1. GTMetrix , 2. WebPageTest, 3.LightHouse
Brainstorming started with gathering necessary information required for the data analystics team to have smooth expereince by using the tool. With the gathered information, few important topics were picked and features were built based on those needs. The following are the topics the features were focussed on,
Used pagination method to render a large amount of rows in application without breaking the browser, or without crashing it and using this method it provides the results very fast.
The most time-saving optimisation would be dynamic fetching. The rows of a table are fetched only when the user requests it. This saves a lot of seconds off our initial load time, by distributing that across requests.
Svelte itself is faster in initial load times and tends to have a more responsive user interface than most of the frameworks like React.
Image was fetched directly from a website and lazy loading was enabled so it increased the load time so added the image along with the code in local and removed lazy loading as the image comes in the main page.
Did cache Busting in order to change the URL of the static files whenever one make updates, forcing the browser to fetch the new version.