{"id":21989185,"url":"https://github.com/repcomm/csspr","last_synced_at":"2026-04-06T08:02:00.277Z","repository":{"id":130854000,"uuid":"437458111","full_name":"RepComm/csspr","owner":"RepComm","description":"Experiment CSS lexer, and bounding box renderer with no dependencies.","archived":false,"fork":false,"pushed_at":"2021-12-12T20:48:46.000Z","size":120,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-23T02:44:33.454Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/RepComm.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}},"created_at":"2021-12-12T05:09:31.000Z","updated_at":"2021-12-12T20:48:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"e7086e18-ed2e-4e1b-b59b-023a69997ea3","html_url":"https://github.com/RepComm/csspr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RepComm/csspr","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RepComm%2Fcsspr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RepComm%2Fcsspr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RepComm%2Fcsspr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RepComm%2Fcsspr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RepComm","download_url":"https://codeload.github.com/RepComm/csspr/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RepComm%2Fcsspr/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31464111,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"online","status_checked_at":"2026-04-06T02:00:07.287Z","response_time":112,"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":[],"created_at":"2024-11-29T19:28:16.169Z","updated_at":"2026-04-06T08:02:00.260Z","avatar_url":"https://github.com/RepComm.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# @repcomm/csspr\n\nCSS Pseudo Renderer\n\nI want to create my own CLI and graphical browser engines eventually, so this is a necessity.\n\nThis software lib has no dependencies and is intended to work with nodejs and web.\n\nA demo can be found at index.html and index.ts\n\nThe code is imported from mod.js, which can be required from node_modules even within browser (see index.ts for example)\n\n![img](./example.png)\n\n## State\n- Lex CSS into JS objects\n## Target State\n- Render bounding boxes\n\n## Intended use\n- Import CSS string, file, or URL\n- Supply basic DOM tree\n- Call render to generate BBOXes\n- Use BBOXes however you want\n\n## Future hurdles anticipated\n- This software knows nothing about font\u003cbr/\u003e\nCould be solved by using an average font metric hard coded, as well as the ability to supply font info for calculations from host software. This isn't a huge issue.\n\n## Current API\n```ts\nCSSPR.load (url): Promise\u003cCSSPRStyleSheet\u003e\n```\nLoads a CSS file from a URL and returns the JS object representation\nAlso adds to CSSPR.stylesheet.all array\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frepcomm%2Fcsspr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frepcomm%2Fcsspr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frepcomm%2Fcsspr/lists"}