From 464c6b6b47b99376666dd6fc70fba53e0b9cd8dc Mon Sep 17 00:00:00 2001 From: Nikunj Bisht Date: Fri, 6 Oct 2023 03:12:41 +0530 Subject: [PATCH 1/4] Csv-to-Json-converter --- CSV-to-json converter | 1 + 1 file changed, 1 insertion(+) create mode 160000 CSV-to-json converter diff --git a/CSV-to-json converter b/CSV-to-json converter new file mode 160000 index 000000000..87165e5fb --- /dev/null +++ b/CSV-to-json converter @@ -0,0 +1 @@ +Subproject commit 87165e5fb163a4578d3060926432a053c4f1aace From 2df988e01aa726f2898bed4e1e85f4dade7c3c82 Mon Sep 17 00:00:00 2001 From: Nikunj Bisht Date: Fri, 6 Oct 2023 15:29:34 +0530 Subject: [PATCH 2/4] Added csv to json Converter --- CSV-to-json converter | 1 - CsvToJsonConverter/nikunj/fileWorker.js | 36 +++++++++++++++++++ CsvToJsonConverter/nikunj/index.html | 8 +++++ CsvToJsonConverter/nikunj/main.js | 31 ++++++++++++++++ CsvToJsonConverter/nikunj/worker.js | 47 +++++++++++++++++++++++++ 5 files changed, 122 insertions(+), 1 deletion(-) delete mode 160000 CSV-to-json converter create mode 100644 CsvToJsonConverter/nikunj/fileWorker.js create mode 100644 CsvToJsonConverter/nikunj/index.html create mode 100644 CsvToJsonConverter/nikunj/main.js create mode 100644 CsvToJsonConverter/nikunj/worker.js diff --git a/CSV-to-json converter b/CSV-to-json converter deleted file mode 160000 index 87165e5fb..000000000 --- a/CSV-to-json converter +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 87165e5fb163a4578d3060926432a053c4f1aace diff --git a/CsvToJsonConverter/nikunj/fileWorker.js b/CsvToJsonConverter/nikunj/fileWorker.js new file mode 100644 index 000000000..17484a015 --- /dev/null +++ b/CsvToJsonConverter/nikunj/fileWorker.js @@ -0,0 +1,36 @@ +onmessage = (mssg) => { + + + let f = mssg.data; + console.log(f) + let fs = new FileReader(); + fs.readAsBinaryString(f); + let jsonOutput = []; + let headers = []; + fs.onloadend = function (e) { +const rows = e.target.result.split("\r\n") +console.log(rows) +for(let i = 0 ;i + + + +

+ + + diff --git a/CsvToJsonConverter/nikunj/main.js b/CsvToJsonConverter/nikunj/main.js new file mode 100644 index 000000000..19c00edc0 --- /dev/null +++ b/CsvToJsonConverter/nikunj/main.js @@ -0,0 +1,31 @@ +const fileWorker = new Worker('fileWorker.js'); +fileWorker.onmessage = (mssg) => { + document.getElementById("rem").innerHTML = mssg.data; + + +} +document.getElementById("fileP").addEventListener('change',function(){ + let re = new FileReader(); + re.onload = function() { + console.log("file") + fileWorker.postMessage(document.getElementById("fileP").files[0]) + + } + re.readAsText(this.files[0]); + +}) + +function fun(){ + var worker = new Worker('worker.js'); + + worker.onmessage = (mssg) => { + + + worker.terminate() + } + worker.postMessage("sum") +} + + + + diff --git a/CsvToJsonConverter/nikunj/worker.js b/CsvToJsonConverter/nikunj/worker.js new file mode 100644 index 000000000..0cf894b20 --- /dev/null +++ b/CsvToJsonConverter/nikunj/worker.js @@ -0,0 +1,47 @@ +self.onmessage = async (mssg) => { + const now = performance.now(); + fetch("https://people.sc.fsu.edu/~jburkardt/data/csv/addresses.csv",{mode: 'no-cors'}) + .then(res=>res.blob()) + .then(blob=>{ + console.log(blob) + var a = document.createElement('a') + var file = window.URL.createObjectURL(blob); + window.location.assign(file); + + postMessage("done"); + + + }) + + // let dat = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat1 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat2 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat3 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat4 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat5 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat6 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat7 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat8 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let dat9 = await fetch( + // "https://random-data-api.com/api/bank/random_bank?size=100" + // ); + // let t = await dat.json(); +}; From 1608602c677d6cf7e4f237138f7140af61f71dc2 Mon Sep 17 00:00:00 2001 From: Nikunj Bisht Date: Sat, 7 Oct 2023 04:31:45 +0530 Subject: [PATCH 3/4] added readme and code refactoring --- CsvToJsonConverter/nikunj/README.md | 18 +++++++++ CsvToJsonConverter/nikunj/fileWorker.js | 54 ++++++++++--------------- CsvToJsonConverter/nikunj/index.html | 3 +- CsvToJsonConverter/nikunj/main.js | 40 +++++------------- CsvToJsonConverter/nikunj/worker.js | 47 --------------------- 5 files changed, 50 insertions(+), 112 deletions(-) create mode 100644 CsvToJsonConverter/nikunj/README.md delete mode 100644 CsvToJsonConverter/nikunj/worker.js diff --git a/CsvToJsonConverter/nikunj/README.md b/CsvToJsonConverter/nikunj/README.md new file mode 100644 index 000000000..28918c137 --- /dev/null +++ b/CsvToJsonConverter/nikunj/README.md @@ -0,0 +1,18 @@ + +## Project Information + +This is a small project in which a csv file of any size data is being converted into JSON format and all this task is being done in the worker thread not on the main thread you can look into the code for more details + + + +## Use +- Open index.html with live server + +- Select file by clicking on Choose file button and the result will be displayed in your page.Make sure the file is not corrupted + + +### Tested Platform +- chrome + +- FireFox + \ No newline at end of file diff --git a/CsvToJsonConverter/nikunj/fileWorker.js b/CsvToJsonConverter/nikunj/fileWorker.js index 17484a015..038a13b9a 100644 --- a/CsvToJsonConverter/nikunj/fileWorker.js +++ b/CsvToJsonConverter/nikunj/fileWorker.js @@ -1,36 +1,24 @@ onmessage = (mssg) => { - - - let f = mssg.data; - console.log(f) - let fs = new FileReader(); - fs.readAsBinaryString(f); - let jsonOutput = []; - let headers = []; - fs.onloadend = function (e) { -const rows = e.target.result.split("\r\n") -console.log(rows) -for(let i = 0 ;i - - +

diff --git a/CsvToJsonConverter/nikunj/main.js b/CsvToJsonConverter/nikunj/main.js index 19c00edc0..cb22ac7ee 100644 --- a/CsvToJsonConverter/nikunj/main.js +++ b/CsvToJsonConverter/nikunj/main.js @@ -1,31 +1,11 @@ -const fileWorker = new Worker('fileWorker.js'); +const fileWorker = new Worker("fileWorker.js"); fileWorker.onmessage = (mssg) => { - document.getElementById("rem").innerHTML = mssg.data; - - -} -document.getElementById("fileP").addEventListener('change',function(){ - let re = new FileReader(); - re.onload = function() { - console.log("file") - fileWorker.postMessage(document.getElementById("fileP").files[0]) - - } - re.readAsText(this.files[0]); - -}) - -function fun(){ - var worker = new Worker('worker.js'); - - worker.onmessage = (mssg) => { - - - worker.terminate() - } - worker.postMessage("sum") -} - - - - + document.getElementById("rem").innerHTML = mssg.data; +}; +document.getElementById("fileP").addEventListener("change", function () { + let re = new FileReader(); + re.onload = function () { + fileWorker.postMessage(document.getElementById("fileP").files[0]); + }; + re.readAsText(this.files[0]); +}); diff --git a/CsvToJsonConverter/nikunj/worker.js b/CsvToJsonConverter/nikunj/worker.js deleted file mode 100644 index 0cf894b20..000000000 --- a/CsvToJsonConverter/nikunj/worker.js +++ /dev/null @@ -1,47 +0,0 @@ -self.onmessage = async (mssg) => { - const now = performance.now(); - fetch("https://people.sc.fsu.edu/~jburkardt/data/csv/addresses.csv",{mode: 'no-cors'}) - .then(res=>res.blob()) - .then(blob=>{ - console.log(blob) - var a = document.createElement('a') - var file = window.URL.createObjectURL(blob); - window.location.assign(file); - - postMessage("done"); - - - }) - - // let dat = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat1 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat2 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat3 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat4 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat5 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat6 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat7 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat8 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let dat9 = await fetch( - // "https://random-data-api.com/api/bank/random_bank?size=100" - // ); - // let t = await dat.json(); -}; From a28a0114b6173b66932e4545f6977a062a8682a8 Mon Sep 17 00:00:00 2001 From: Nikunj Bisht <52692588+Nikunj-bisht@users.noreply.github.com> Date: Sun, 8 Oct 2023 00:27:39 +0530 Subject: [PATCH 4/4] added screenshot in README.md --- CsvToJsonConverter/nikunj/README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/CsvToJsonConverter/nikunj/README.md b/CsvToJsonConverter/nikunj/README.md index 28918c137..1e5707ff4 100644 --- a/CsvToJsonConverter/nikunj/README.md +++ b/CsvToJsonConverter/nikunj/README.md @@ -15,4 +15,9 @@ This is a small project in which a csv file of any size data is being converted - chrome - FireFox - \ No newline at end of file + +### Screenshot + +![Screenshot from 2023-10-06 03-26-25](https://github.com/Nikunj-bisht/javascript-projects/assets/52692588/f942b4ae-4393-4182-91f8-392b403ea931) + +