{"id":13806448,"url":"https://github.com/joist-framework/joist","last_synced_at":"2026-02-22T21:12:30.107Z","repository":{"id":36986099,"uuid":"219759070","full_name":"joist-framework/joist","owner":"joist-framework","description":"A small (~2kb) library to help with the creation of web components and web component based applications","archived":false,"fork":false,"pushed_at":"2026-02-03T17:25:18.000Z","size":12075,"stargazers_count":135,"open_issues_count":6,"forks_count":6,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-02-04T05:58:24.595Z","etag":null,"topics":["customelements","dependency-injection","typescript","webcomponents"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/joist-framework.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-11-05T14:02:04.000Z","updated_at":"2026-02-03T17:26:58.000Z","dependencies_parsed_at":"2023-12-30T01:43:13.187Z","dependency_job_id":"79bbd8e7-494c-4d54-9615-230b8429d465","html_url":"https://github.com/joist-framework/joist","commit_stats":{"total_commits":1068,"total_committers":9,"mean_commits":"118.66666666666667","dds":0.6301498127340823,"last_synced_commit":"708d3bf9660a4f1c8e91687b8873ee473b34d5cf"},"previous_names":["deebloo/joist","deebloo/lit-kit"],"tags_count":244,"template":false,"template_full_name":null,"purl":"pkg:github/joist-framework/joist","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joist-framework%2Fjoist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joist-framework%2Fjoist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joist-framework%2Fjoist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joist-framework%2Fjoist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joist-framework","download_url":"https://codeload.github.com/joist-framework/joist/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joist-framework%2Fjoist/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29727178,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-22T20:09:16.275Z","status":"ssl_error","status_checked_at":"2026-02-22T20:09:13.750Z","response_time":110,"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":["customelements","dependency-injection","typescript","webcomponents"],"created_at":"2024-08-04T01:01:11.848Z","updated_at":"2026-02-22T21:12:30.037Z","avatar_url":"https://github.com/joist-framework.png","language":"TypeScript","funding_links":[],"categories":["Libraries","TypeScript"],"sub_categories":["Class Based"],"readme":"\n# Joist\n\nWeb components are awesome! Joist is a set of small libraries designed to add the bare minimum to web components to make you as productive as possible. The entire project started years ago when I made my first attempt at bringing dependency injection (@joist/di) to Custom Elements as a way to share state between them. Along the way, several other packages were added to solve different challenges.\n\nWhen you have to integrate with many different applications, many different frameworks with many different technologies you need a toolkit to help.\nFrom SalesForce to ServiceNow to React you need to write JavaScript/TypeScript and you need tools to help.\n\nThis toolkit is here to help provide just the functionality you need and nothing more. Use with Lit, FAST, Vanilla WC, Node, wherever you find yourself.\n\n## Packages\n\n| Package                                  | Description                                   |\n| ---------------------------------------- | --------------------------------------------- |\n| [@joist/di](packages/di)                 | Small and Efficient dependency Injection      |\n| [@joist/element](packages/element)       | utilities for custom elements                 |\n| [@joist/observable](packages/observable) | Observe changes to class properties           |\n| [@joist/templating](packages/templating) | Use custom elements to display dynamic values |\n\n**Sponsored by:**\n\n[![Noctua Logo](assets/Noctua_Logo.webp)](https://github.com/Noctua-Technology)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoist-framework%2Fjoist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoist-framework%2Fjoist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoist-framework%2Fjoist/lists"}