1:"$Sreact.fragment" 2:I[69243,["230","static/chunks/230-462349901c82945f.js","177","static/chunks/app/layout-a676ac0595dd2fbf.js"],""] 3:I[87555,[],""] 4:I[31295,[],""] 5:I[90639,["230","static/chunks/230-462349901c82945f.js","177","static/chunks/app/layout-a676ac0595dd2fbf.js"],"Toaster"] 6:"$Sreact.suspense" 7:I[7590,["230","static/chunks/230-462349901c82945f.js","177","static/chunks/app/layout-a676ac0595dd2fbf.js"],"NavigationEvents"] 8:I[6874,["874","static/chunks/874-3e820bd666038662.js","220","static/chunks/app/about/page-74f6430e2c5c0d93.js"],""] 1d:I[28393,[],""] :HL["/_next/static/media/47cbc4e2adbc5db9-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/media/739c2d8941231bb4-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}] :HL["/_next/static/css/9db33f7737c66f5d.css","style"] :HL["/_next/static/css/cfa4bce5eb03d9a9.css","style"] 0:{"P":null,"b":"y8IOYE-eeDf2FVR__9nBN","p":"","c":["","about"],"i":false,"f":[[["",{"children":["about",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9db33f7737c66f5d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":[["$","head",null,{"children":[["$","link",null,{"rel":"canonical","href":"https://www.fileglance.info"}],["$","$L2",null,{"id":"matomo","strategy":"afterInteractive","children":"\n var _paq = window._paq = window._paq || [];\n /* tracker methods like \"setCustomDimension\" should be called before \"trackPageView\" */\n _paq.push(['disableCookies']);\n // _paq.push(['trackPageView']);\n _paq.push(['enableLinkTracking']);\n (function() {\n var u=\"https://piwik.mdell.org/\";\n _paq.push(['setTrackerUrl', u+'matomo.php']);\n _paq.push(['setSiteId', '10']);\n var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];\n g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);\n })();\n "}]]}],["$","body",null,{"className":"__className_372368 __variable_372368 __variable_5899e0","children":[["$","main",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}],["$","$L5",null,{}],["$","$6",null,{"fallback":null,"children":["$","$L7",null,{}]}]]}]]}]]}],{"children":["about",["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[[["$","$L8",null,{"href":"/","className":"p-2 inline-flex items-center text-gray-600 hover:text-blue-900 font-medium no-underline hover:underline","children":[["$","svg",null,{"className":"w-4 h-4 mr-1","fill":"none","stroke":"currentColor","strokeWidth":"2","viewBox":"0 0 24 24","children":["$","path",null,{"strokeLinecap":"round","strokeLinejoin":"round","d":"M15 19l-7-7 7-7"}]}],"Back"]}],["$","div",null,{"className":"max-w-2xl mx-auto px-4 mb-6","children":[["$","h1",null,{"className":"mt-4","children":"About FileGlance"}],["$","p",null,{"children":"Powerful tool for viewing, filtering, and transforming tabular data files using JavaScript."}],["$","h2",null,{"children":"Why FileGlance?"}],["$","b",null,{"children":"Frustrated by:"}],["$","ol",null,{"children":[["$","li",null,{"children":"Needing different tools for different formats."}],["$","li",null,{"children":"Lack of tools optimized for quickly understanding data."}],["$","li",null,{"children":"Messy files that require cleaning before use."}]]}],["$","p",null,{"children":"I built FileGlance as a side project and a fun way to learn React and Tailwind."}],["$","p",null,{"children":"Maybe it will help others, too."}],"$L9","$La","$Lb","$Lc","$Ld","$Le","$Lf","$L10","$L11","$L12","$L13","$L14","$L15","$L16","$L17","$L18","$L19"]}]],["$L1a"],"$L1b"]}],{},null,false]},null,false]},null,false],"$L1c",false]],"m":"$undefined","G":["$1d",[]],"s":false,"S":true} 1e:I[59665,[],"OutletBoundary"] 20:I[74911,[],"AsyncMetadataOutlet"] 22:I[59665,[],"ViewportBoundary"] 24:I[59665,[],"MetadataBoundary"] 9:["$","p",null,{"className":"mt-6 mb-1","children":"It aims to be both:"}] a:["$","ul",null,{"children":[["$","li",null,{"children":[["$","strong",null,{"children":"Simple:"}]," Just drag and drop a file; it automatically detects encoding, delimiter, headers, and more."]}],["$","li",null,{"children":[["$","strong",null,{"children":"Powerful:"}]," Run custom JavaScript to filter and transform data at scale."]}]]}] b:["$","h2",null,{"children":"Features"}] c:["$","ul",null,{"children":[["$","li",null,{"children":"Drag-and-drop support for all common file types (CSV, XLSX, JSON, etc.)"}],["$","li",null,{"children":"Automatic detection of file encoding, delimiters, and data location"}],["$","li",null,{"children":"Optimized display (hides empty columns by default)"}],["$","li",null,{"children":"Simple filtering with value facets for exact matches"}],["$","li",null,{"children":"Full-text search across data"}],["$","li",null,{"children":"Basic sorting functionality"}],["$","li",null,{"children":"Advanced row filtering using custom JavaScript"}],["$","li",null,{"children":"Advanced value transformation using custom JavaScript"}],["$","li",null,{"children":"One-click export to CSV, XLSX, or JSON"}],["$","li",null,{"children":"Handles large files with virtualized list rendering"}],["$","li",null,{"children":"Visual representation of value counts (histograms for numeric data)"}],["$","li",null,{"children":"Progressive Web App (PWA) support"}],["$","li",null,{"children":"Privacy-focused: Your data never leaves your device"}]]}] d:["$","h2",null,{"children":"Use Cases"}] e:["$","h4",null,{"children":"Data Viewing & Exploration"}] f:["$","p",null,{"className":"mb-1","children":["View raw data and column types. Get visualizations for categorical and continuous data (histograms). For numeric values, see statistics like average, median, min, and max."," ",["$","span",null,{"style":{"whiteSpace":"nowrap"},"children":"Use it as:"}]]}] 10:["$","ul",null,{"children":[["$","li",null,{"children":"Online CSV / TSV / Excel viewer"}],["$","li",null,{"children":"See column stats like average, median, min, and max for numeric columns (e.g., \"Find the average order value in a sales CSV\")"}],["$","li",null,{"children":"Data type inspector (e.g., \"Quickly validate which columns are text, numbers, or dates\")"}],["$","li",null,{"children":"File converter (e.g., \"Convert an Excel file to CSV or JSON in one click\")"}]]}] 11:["$","h4",null,{"children":"Data Filtering & Cleaning"}] 12:["$","p",null,{"className":"mb-1","children":"Apply quick filters with one click or use complex filter functions with custom JavaScript. For example:"}] 13:["$","ul",null,{"children":[["$","li",null,{"children":"Remove empty rows or columns"}],["$","li",null,{"children":"Trim whitespace from values"}],["$","li",null,{"children":"Deduplicate based on specific columns"}],["$","li",null,{"children":"Find unique values"}],["$","li",null,{"children":"Replace missing values with defaults"}],["$","li",null,{"children":"Detect and handle outliers"}]]}] 14:["$","h4",null,{"children":"Data Transformation"}] 15:["$","p",null,{"className":"mb-1","children":"Transform data using custom JavaScript functions. For example:"}] 16:["$","ul",null,{"children":[["$","li",null,{"children":"Parse numbers from text"}],["$","li",null,{"children":"Normalize text case (e.g., all lowercase)"}],["$","li",null,{"children":"Split the domain from an email"}],["$","li",null,{"children":"Format Unix timestamps to readable dates"}],["$","li",null,{"children":"Merge similar categories (e.g., \"NY\" and \"New York\")"}],["$","li",null,{"children":"Export to CSV, JSON, Markdown etc."}]]}] 17:["$","h2",null,{"children":"Tech Stack & Code"}] 18:["$","p",null,{"className":"mt-2","children":["FileGlance is built with TypeScript, Next.js/React, Tailwind CSS, and Recharts. It is open source under the AGPL license. Interested developers can find the full source code on GitHub:"," ",["$","a",null,{"href":"https://github.com/dell-mic/file-glance","target":"_blank","children":"https://github.com/dell-mic/file-glance"}]]}] 19:["$","div",null,{"className":"flex justify-center mt-8","children":["$","$L8",null,{"href":"/","children":["$","button",null,{"className":"text-2xl text-gray-700 font-medium m-4 py-2 px-8 rounded-sm transition-colors duration-200 cursor-pointer border border-gray-400 hover:bg-gray-100 bg-white outline-none focus:ring-2 focus:ring-blue-300","children":"Try it out now"}]}]}] 1a:["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/cfa4bce5eb03d9a9.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}] 1b:["$","$L1e",null,{"children":["$L1f",["$","$L20",null,{"promise":"$@21"}]]}] 1c:["$","$1","h",{"children":[null,[["$","$L22",null,{"children":"$L23"}],["$","meta",null,{"name":"next-size-adjust","content":""}]],["$","$L24",null,{"children":["$","div",null,{"hidden":true,"children":["$","$6",null,{"fallback":null,"children":"$L25"}]}]}]]}] 23:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] 1f:null 21:{"metadata":[["$","title","0",{"children":"About | File Glance"}],["$","meta","1",{"name":"description","content":"Simple, but powerful, privacy-friendly tool for working with tabular data using JavaScript. Supports CSV, TSV, XLSX, JSON"}],["$","link","2",{"rel":"manifest","href":"/manifest.webmanifest","crossOrigin":"$undefined"}]],"error":null,"digest":"$undefined"} 25:"$21:metadata"