{"id":30127964,"url":"https://github.com/subwaymatch/gold-is","last_synced_at":"2025-08-10T17:12:28.248Z","repository":{"id":56430231,"uuid":"285671704","full_name":"subwaymatch/gold-is","owner":"subwaymatch","description":"Storytelling of datasets with Python, in the browser, without a server!","archived":false,"fork":false,"pushed_at":"2021-10-02T07:04:52.000Z","size":1705,"stargazers_count":4,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-06-15T16:01:10.776Z","etag":null,"topics":["data-analytics","nextjs","pandas","pyodide","python"],"latest_commit_sha":null,"homepage":"https://gold.is/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subwaymatch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-08-06T21:07:53.000Z","updated_at":"2022-07-19T09:24:45.000Z","dependencies_parsed_at":"2022-08-15T18:31:28.410Z","dependency_job_id":null,"html_url":"https://github.com/subwaymatch/gold-is","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/subwaymatch/gold-is","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subwaymatch%2Fgold-is","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subwaymatch%2Fgold-is/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subwaymatch%2Fgold-is/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subwaymatch%2Fgold-is/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subwaymatch","download_url":"https://codeload.github.com/subwaymatch/gold-is/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subwaymatch%2Fgold-is/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269756394,"owners_count":24470566,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data-analytics","nextjs","pandas","pyodide","python"],"created_at":"2025-08-10T17:12:02.823Z","updated_at":"2025-08-10T17:12:28.234Z","avatar_url":"https://github.com/subwaymatch.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg width=\"700\" alt=\"gold-logo-with-text@2x\" src=\"https://user-images.githubusercontent.com/1064036/92136228-6237e700-edd1-11ea-81be-fdddfe379b01.png\"\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\n  \u003ca href=\"https://deepscan.io/dashboard#view=project\u0026tid=10181\u0026pid=13321\u0026bid=220060\" title=\"Deepscan\"\u003e\u003cimg src=\"https://deepscan.io/api/teams/10181/projects/13321/branches/220060/badge/grade.svg\" alt=\"Deepscan Badge\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://app.codacy.com/manual/subwaymatch/gold-is?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=subwaymatch/gold-is\u0026utm_campaign=Badge_Grade_Dashboard\" title=\"Codacy\"\u003e\u003cimg src=\"https://api.codacy.com/project/badge/Grade/5e7a9e7935534e57a9a49d716ff3338a\" alt=\"Codacy Badge\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://opensource.org/licenses/MIT\" title=\"MIT License\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-MIT-yellow.svg\" alt=\"License: MIT\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n## What is it?\n\n[Gold.is](https://gold.is) aims to tell you what your data looks like in plain human language.\n\n### Note on Pyodide Version\n\nThis app runs [Pyodide](https://github.com/pyodide/pyodide) in the main thread which frequently blocks the UI. This design decision was due to a technical issue with using Web Workers in Pyodide version `0.15`. This issue has been fixed in the latest versions of Pyodide (`0.18` or higher). If you choose to build a similar app, you should run Pyodide inside a Web Worker.\n\n\u003cbr /\u003e\u003cbr /\u003e\n\n![image](https://user-images.githubusercontent.com/1064036/92619021-9ce4c800-f286-11ea-9984-78a52a4e48c4.png)\n\n## Features\n\n- :crystal_ball: No need to run a backend server to run Jupyter notebooks or Python - [Gold.is](https://gold.is) uses [Pyodide](https://github.com/iodide-project/pyodide) to run Python 3.8 in the browser.\n- :sparkles: Efficient data anlysis using `pandas` in the browser.\n- :bar_chart: Visualize data with [Victory](https://formidable.com/open-source/victory/), a set of modular charting components for React (and React Native).\n- :runner: Parallel computations using `numpy` under the hood - fast!\n- :x: Drop any columns you don't need before running the analysis\n- :left_right_arrow: Efficient data-sharing between JS and Python. Arrays addresses are shared between JS and Python instead of mem-copying ([https://pyodide.readthedocs.io/en/latest/using_pyodide_from_javascript.html](https://pyodide.readthedocs.io/en/latest/using_pyodide_from_javascript.html)).\n\n## Browsers Support\n\n| [\u003cimg src=\"https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png\" alt=\"Firefox\" width=\"24px\" height=\"24px\" /\u003e](http://godban.github.io/browsers-support-badges/)\u003cbr/\u003eFirefox | [\u003cimg src=\"https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png\" alt=\"Chrome\" width=\"24px\" height=\"24px\" /\u003e](http://godban.github.io/browsers-support-badges/)\u003cbr/\u003eChrome | [\u003cimg src=\"https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png\" alt=\"Safari\" width=\"24px\" height=\"24px\" /\u003e](http://godban.github.io/browsers-support-badges/)\u003cbr/\u003eSafari | [\u003cimg src=\"https://raw.githubusercontent.com/alrra/browser-logos/master/src/opera/opera_48x48.png\" alt=\"Opera\" width=\"24px\" height=\"24px\" /\u003e](http://godban.github.io/browsers-support-badges/)\u003cbr/\u003eOpera | [\u003cimg src=\"https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png\" alt=\"IE / Edge\" width=\"24px\" height=\"24px\" /\u003e](http://godban.github.io/browsers-support-badges/)\u003cbr/\u003eEdge |\n| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| \u003e= 52 (Mar 2017)                                                                                                                                                                                                  | \u003e= 57 (Mar 2017)                                                                                                                                                                                              | \u003e= 11 (Sep 2017)                                                                                                                                                                                              | \u003e= 44 (Mar 2017)                                                                                                                                                                                          | Not Supported                                                                                                                                                                                           |\n\n- [WebAssembly](https://webassembly.org/) is used to integrate Python 3.8 runtime to the browser using [Pyodide](https://github.com/iodide-project/pyodide). Please check WebAssembly support in your browser at [https://caniuse.com/#feat=wasm](https://caniuse.com/#feat=wasm).\n- ~~[Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers) are used to run Python scripts in non-main threads. You need to use a browser that supports Web Workers. You can check the browser support at [https://caniuse.com/#feat=webworkers](https://caniuse.com/#feat=webworkers).~~\n- Due to a [known issue](https://github.com/iodide-project/pyodide/issues/441) with Pyodide, web workers are not being used at the moment. This will cause the browser to freeze when Python code is running.\n\n## Want to do your own thang?\n\nFirst, clone the repository.\n```\n$ git clone https://github.com/subwaymatch/gold-is.git\n$ cd gold-is\n```\n\nInstall dependencies. I use `yarn`, but feel free to use `npm`.\n```\n$ yarn\n```\n\nRun the development server. This will launch a development server at port 3000.\n```\n$ yarn dev\n```\n\nTo build,\n```\n$ yarn build\n```\n\n## To-do Items\n\n- **Increase URL Import File Size Limit**: Currently, CSV file download via URL is capped at 5MB. This is due to a payload limit on Vercel.\n- **Example Datasets**: Add more example datasets.\n- **Correlation between Columns**: Add visualizations to display relationships between different columns.\n- **Web Workers*: Use web workers to run Python (pyodide). This is dependent on the bug fix of a [known issue](https://github.com/iodide-project/pyodide/issues/441).\n\n\n## Screenshots\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/1064036/92139164-fce5f500-edd4-11ea-99a0-9065fac66406.png\" alt=\"Homepage Screenshot\" width=\"720\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/1064036/92139167-fd7e8b80-edd4-11ea-81bf-cd17ccffa408.png\" alt=\"Load Data Page Screenshot\" width=\"720\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/1064036/92139174-ff484f00-edd4-11ea-805c-497d8bbd709a.png\" alt=\"Select Columns Page Screenshot\" width=\"720\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/1064036/92139171-feafb880-edd4-11ea-8853-8d0c39fd5685.png\" alt=\"Results Page Screenshot\" width=\"720\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\u003cbr /\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/1064036/92139168-fd7e8b80-edd4-11ea-87b5-0a1e0d37e6d9.png\" alt=\"Column Details Screenshot\" width=\"720\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\n\u003c/p\u003e\n\n## Acknowledgements\n\n- **Jeongmin Lee**: Project manager / data analyst\n- This project is heavily inspired by [Pandas Profiling](https://github.com/pandas-profiling/pandas-profiling).\n\n## Deployment\n\n![next-vercel-illustration](https://user-images.githubusercontent.com/1064036/89702608-860a2900-d908-11ea-83ad-aa228b4322ae.jpg)\n\nGold.is is built with [Next.js](https://nextjs.org/) and is continuously deployed to [Vercel](https://vercel.com/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubwaymatch%2Fgold-is","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubwaymatch%2Fgold-is","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubwaymatch%2Fgold-is/lists"}