{"id":16461719,"url":"https://github.com/marabesi/json-tool","last_synced_at":"2025-03-21T05:30:59.271Z","repository":{"id":37180975,"uuid":"392210945","full_name":"marabesi/json-tool","owner":"marabesi","description":"json-tool allows you to quick format json content with a click of a button.","archived":false,"fork":false,"pushed_at":"2024-04-27T13:24:04.000Z","size":25462,"stargazers_count":5,"open_issues_count":8,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-05-01T13:51:05.633Z","etag":null,"topics":["json","productivity","reactjs","snap","utility"],"latest_commit_sha":null,"homepage":"https://snapcraft.io/json-tool","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marabesi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-03T06:13:22.000Z","updated_at":"2024-05-02T14:35:37.999Z","dependencies_parsed_at":"2023-02-14T01:01:00.540Z","dependency_job_id":"b47a6d98-0250-4b51-b73c-50aed581dc58","html_url":"https://github.com/marabesi/json-tool","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marabesi%2Fjson-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marabesi%2Fjson-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marabesi%2Fjson-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marabesi%2Fjson-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marabesi","download_url":"https://codeload.github.com/marabesi/json-tool/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244117611,"owners_count":20400742,"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","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":["json","productivity","reactjs","snap","utility"],"created_at":"2024-10-11T11:09:09.002Z","updated_at":"2025-03-21T05:30:58.821Z","avatar_url":"https://github.com/marabesi.png","language":"TypeScript","funding_links":["https://www.buymeacoffee.com/marabesi"],"categories":[],"sub_categories":[],"readme":"[![Codacy Badge](https://api.codacy.com/project/badge/Grade/52eb1fd278d54e29ae01cc1ea5b3133b)](https://app.codacy.com/gh/marabesi/json-tool?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=marabesi/json-tool\u0026utm_campaign=Badge_Grade_Settings)\n[![Node CI](https://github.com/marabesi/json-tool/actions/workflows/ci.yml/badge.svg)](https://github.com/marabesi/json-tool/actions/workflows/delivery.yml) [![Coverage Status](https://coveralls.io/repos/github/marabesi/json-tool/badge.svg?branch=)](https://coveralls.io/github/marabesi/json-tool?branch=)\n[![tested with jest](https://img.shields.io/badge/tested_with-jest-99424f.svg?logo=jest)](https://github.com/jestjs/jest)\n\nAre you tired of accessing **free websites just to format your json content**? Me too. Besides the \"data protection\"\nissue sometimes we just want to have it formatted to move on.\n\nAccording to [ThoughtWorks in the tech radar 27 (item 76 under **Tools**)](https://www.thoughtworks.com/content/dam/thoughtworks/documents/radar/2022/10/tr_technology_radar_vol_27_en.pdf) developers should hold\nthe practice of formatting or sharing information in formatting tools that are not complying with data jurisdiction.\n\n# Try out the [online version (source code server is from branch gh-pages)](https://marabesi.github.io/json-tool)!\n\n\u003ca href=\"https://www.producthunt.com/posts/json-tool?utm_source=badge-featured\u0026utm_medium=badge\u0026utm_souce=badge-json\u0026#0045;tool\" target=\"_blank\"\u003e\u003cimg src=\"https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=329411\u0026theme=light\" alt=\"JSON\u0026#0032;tool - Sometimes\u0026#0032;we\u0026#0032;just\u0026#0032;want\u0026#0032;to\u0026#0032;have\u0026#0032;a\u0026#0032;formatted\u0026#0032;JSON\u0026#0032;string\u0026#0046; | Product Hunt\" style=\"width: 250px; height: 54px;\" width=\"250\" height=\"54\" /\u003e\u003c/a\u003e [![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/json-tool)\n[![\"Buy Me A Coffee\"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/marabesi)\n\n# Publications\n\n- [Web Workers to the Rescue – How to Work with JSON Strings without Blocking User Interactions](https://dev.to/marabesi/web-workers-to-the-rescue-how-to-work-with-json-strings-without-blocking-user-interactions-2jf2)\n- [Announcing the JSON tool - A companion for formatting json content, focused in privacy](https://marabesi.com/web/productivity/utilities/2021/10/24/json-tool-a-companion-for-formatting-json-strings.html)\n\n# json-tool\n\n**json-tool** allows you to quick format json content with a click of a button, and much more:\n\n- JSON content validation, it shows an error message warning invalid json\n- Buttons to allow easy interaction with the clipboard (paste and copy to the clipboard)\n- Search through the json string (offered by the code mirror editor)\n- Upload a json file\n\n![Screenshot from 2022-09-11 11-32-55](https://user-images.githubusercontent.com/2129872/190869274-51b3ae2b-e6db-401b-a058-0f8f887f82e7.png)\n\n![banner-blue](https://user-images.githubusercontent.com/2129872/190869247-4ecb2b87-e9a7-4f0a-b9b3-0ee5f3cefb00.png)\n\n![banner-dark](https://user-images.githubusercontent.com/2129872/190869244-c393456f-bfd2-4622-b96a-2ed1c0e85a6b.png)\n\n![Screenshot from 2022-09-11 11-34-35](https://user-images.githubusercontent.com/2129872/190869278-9e65e742-d2df-47c3-8ddf-740e1f42f623.png)\n\n# Resources\n\n- [useFakeTimers not working in jest/testing-library](https://stackoverflow.com/questions/71174071/usefaketimers-not-working-in-jest-testing-library)\n- [Clipboard API](https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API)\n- [Unblocking clipboard access](https://web.dev/async-clipboard)\n- [How the useEffect Hook Works (with Examples)](https://daveceddia.com/useeffect-hook-examples/#when-does-useeffect-run)\n- [How to Use Web Workers in React](https://plainenglish.io/blog/web-worker-in-react)\n  - [worker-timers](https://github.com/chrisguttandin/worker-timers)\n- [Drawer example](https://codesandbox.io/p/sandbox/drawer-with-tailwind-css-48z1k3)\n\n## Debounce\n\n- [How to perform debounce?](https://stackoverflow.com/questions/23123138/how-to-perform-debounce)\n\n# Related projects\n\n- [JSON crack](https://github.com/AykutSarac/jsoncrack.com)\n- [JSON formatter and validator](https://jsonformatter.curiousconcept.com/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarabesi%2Fjson-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarabesi%2Fjson-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarabesi%2Fjson-tool/lists"}