{"id":43876527,"url":"https://github.com/jmakeig/object-describe","last_synced_at":"2026-02-06T14:44:55.631Z","repository":{"id":18860997,"uuid":"83860081","full_name":"jmakeig/object-describe","owner":"jmakeig","description":"Pretty print JavaScript object hierarchy","archived":false,"fork":false,"pushed_at":"2023-01-03T22:08:03.000Z","size":2806,"stargazers_count":0,"open_issues_count":25,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-04-14T19:37:11.353Z","etag":null,"topics":["developer-tools","javascript","marklogic","reflection","visualization"],"latest_commit_sha":null,"homepage":"https://jmakeig.github.io/object-describe/example/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jmakeig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-04T02:49:02.000Z","updated_at":"2020-09-11T17:00:26.000Z","dependencies_parsed_at":"2023-01-11T20:29:59.852Z","dependency_job_id":null,"html_url":"https://github.com/jmakeig/object-describe","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jmakeig/object-describe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmakeig%2Fobject-describe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmakeig%2Fobject-describe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmakeig%2Fobject-describe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmakeig%2Fobject-describe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jmakeig","download_url":"https://codeload.github.com/jmakeig/object-describe/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmakeig%2Fobject-describe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29165080,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T14:37:12.680Z","status":"ssl_error","status_checked_at":"2026-02-06T14:36:22.973Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["developer-tools","javascript","marklogic","reflection","visualization"],"created_at":"2026-02-06T14:44:54.880Z","updated_at":"2026-02-06T14:44:55.624Z","avatar_url":"https://github.com/jmakeig.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `describe(obj)`\n\nA way to inspect the entire type hierarchy of an object, including properties inherited (and potentially overridden) from its prototype chain. \n\nGiven any object or primitive, the `describe()` function lists the type of object and its value, if it’s a primitive. Then, for each of the original object’s properties, their types and values recursively. Finally, it moves up the prototype chain to capture all of the objec’s inherited properties as well.\n\n`describe()` returns a nested data structure that represents the details of the type hierarchy. The `render` module provides formatters, for example to render the type hierarchy as HTML.\n\n## Set-up\n\n1. `npm install`\n1. Configure and deploy mltap (*This isn’t automated yet*)\n1. `export MLTAP_USER='tester' \u0026\u0026 export MLTAP_PASSWORD='********'`\n1. `npm run test`\n\n## Development Set-up\n\n### VSCode\n\n### Settings\n```json\n{\n  \"eslint.enable\": true,\n  \"eslint.options\": {\n    \"configFile\": \".eslintrc.js\",\n    \"ext\": [\n      \".js\",\n      \".sjs\"\n    ]\n  }\n}\n```\n\n### Tasks\n```json\n{\n  \"version\": \"0.1.0\",\n  \"command\": \"npm\",\n  \"isShellCommand\": true,\n  \"showOutput\": \"silent\",\n  \"suppressTaskName\": true,\n  \"options\": {\n    \"env\": {\n      \"MLTAP_USER\": \"tester\",\n      \"MLTAP_PASSWORD\": \"********\"\n    }\n  },\n  \"tasks\": [\n    {\n      \"taskName\": \"test\",\n      \"args\": [\n        \"run\",\n        \"test-pretty\"\n      ],\n      \"problemMatcher\": {\n        \"owner\": \"javascript\",\n        \"fileLocation\": [\n          \"relative\",\n          \"${workspaceRoot}\"\n        ],\n        \"pattern\": {\n          \"regexp\": \"^\\\\s+at: (.+) \\\\((.+):(\\\\d+):(\\\\d+)\\\\)\",\n          \"file\": 2,\n          \"line\": 3,\n          \"column\": 4,\n          \"message\": 1\n        }\n      }\n    }\n  ]\n}\n```\n\u0026copy; 2017 MarkLogic","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmakeig%2Fobject-describe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjmakeig%2Fobject-describe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmakeig%2Fobject-describe/lists"}