{"id":42186590,"url":"https://github.com/paceaux/table-baseline","last_synced_at":"2026-01-26T22:27:44.109Z","repository":{"id":57376299,"uuid":"366087201","full_name":"paceaux/table-baseline","owner":"paceaux","description":"A good start for styling your tables","archived":false,"fork":false,"pushed_at":"2023-05-15T16:26:02.000Z","size":31,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-24T01:25:10.565Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/paceaux.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["paceaux"]}},"created_at":"2021-05-10T15:18:32.000Z","updated_at":"2024-05-19T11:14:09.000Z","dependencies_parsed_at":"2022-09-05T19:13:00.537Z","dependency_job_id":null,"html_url":"https://github.com/paceaux/table-baseline","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/paceaux/table-baseline","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paceaux%2Ftable-baseline","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paceaux%2Ftable-baseline/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paceaux%2Ftable-baseline/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paceaux%2Ftable-baseline/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paceaux","download_url":"https://codeload.github.com/paceaux/table-baseline/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paceaux%2Ftable-baseline/sbom","scorecard":{"id":717323,"data":{"date":"2025-08-11","repo":{"name":"github.com/paceaux/table-baseline","commit":"12e1928292bc2ee34d392f8c4f4bc48cade37ec6"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/14 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 14 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T10:06:10.607Z","repository_id":57376299,"created_at":"2025-08-22T10:06:10.607Z","updated_at":"2025-08-22T10:06:10.607Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28789738,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T21:49:50.245Z","status":"ssl_error","status_checked_at":"2026-01-26T21:48:29.455Z","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":[],"created_at":"2026-01-26T22:27:43.435Z","updated_at":"2026-01-26T22:27:44.094Z","avatar_url":"https://github.com/paceaux.png","language":"HTML","funding_links":["https://github.com/sponsors/paceaux"],"categories":[],"sub_categories":[],"readme":"#  table-baseline.css\n\u003e A good start to your table styles that covers most of the challenges and a few edge cases\n\n[![License][license-image]][license-url] [![Downloads][downloads-image]][downloads-url]\n\n**NPM**\n```\nnpm install --save table-baseline.css\n```\n\n**Download**\n`https://raw.githubusercontent.com/paceaux/table-baseline/master/src/baseline.table.css`\n\n## What does it do?\n### It gives you a good start\nBuilt on the typography-baseline foundations, it gives you a good, _small_ set of styles for tables to work with\n\n### Gives you a \"no-design\" design\nFor those times where you need just a bit more than a [Normalize](http://necolas.github.io/normalize.css/), but way less than [Bootstrap](https://getbootstrap.com/), this gets your tables there. \n\nThis is a fairly unopinionated approach to making sure that tables look like tables\n\n## Browser Support\n* Firefox\n* Chrome\n* Edge\n* Safari\n* Opera\n\n\n## Usage\nWhile this is relatively unopinionated, there are a few \"opinions\" to consider:\n\n* `em` for for `font-size`\n* a unitless `line-height`\n* `rem` for left/right spacing\n* text-spacing based on the golden ratio (.618 / 1.618)\n\n### Fitting it into a CSS architecture\nThis would come after a reset / normalize and and after your set baseline styles. If you're a fan of [ITCSS](https://www.xfive.co/blog/itcss-scalable-maintainable-css-architecture/), this is in the Elements layer.\n\n### Modifying without Swearing or Heavy Drinking\nOne of the really annoying things about other CSS frameworks (cough cough \u003csmall\u003eBootstrap\u003c/small\u003e) is that you mostly have to write new CSS to overwrite the existing styles. Often that means raising specificity, which is really stinking annoying. This is designed to avoid that by using [CSS Variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties)\n\n\nThe table baseline sets most of the CSS variables on the `table`. As CSS variables are subject to the cascade, you can override _any_ variable at any time by changing its value on the relevant selector. You can import this into your current CSS setup, and overwrite all the variables by setting new ones whereever makes sense.\n\n\nAll of the variables are prefixed with `table` so that they can't collide with any other css variables you may have. \n\nThey also inherit values from the typography-baseline. But if you choose not to use it, that's totally fine! They all have default values. \n\n\nSo if you want the `--tablePrimaryBgColor` to be different, you can write the following in your own stylesheet:\n\n```\ntable.myClass {\n    --tablePrimaryBgColor: #c0ffee;\n}\n```\n\nNo raising specificity. Just changing a variable. \n\nIf you want to theme the header of the table, or even a particular widget, it's just:\n\n```\n.myClass thead {\n    --tableAlternatingBgColor: #c0ffee;\n}\n```\n\n#### Colors\nAll of the colors variables are abstractions from the color palette. This is so you can change these colors without having to touch your neutral palette. \n\n```\n    --tableBaseTextColor: var(--colorNeutralDarker);\n    --tableBodyPrimaryBgColor: transparent;\n    --tableBodyAlternatingBgColor: rgba(165,165,165, .3);\n\n    --tablePrimaryBgColor: var(--tableBodyPrimaryBgColor);\n    --tableAlternatingBgColor: var(--tableBodyAlternatingBgColor);\n\n```\n\n#### Line Heights\nThe `--baseLineHeight` is applied to body copy, and the `--smallLineHeight` is used on titles:\n\n```    \n    --tableBaseLineHeight: var(--smallLineHeight, 1.2);\n    --tableSmallLineHeight: 1;\n```\n\n#### Text Sizes\nYou have a minimum of 6 text sizes in two categories: `--table\u003cn\u003eTextSize` and `--table\u003cn\u003eTitleSize`. You have a \"base\" and then superlatives or diminutives to describe the deviation from that base. e.g.:\n\n\n```\n    --tableBiggestTextSize: var(--biggerTextSize, 1.2em);\n    --tableBiggerTextSize: var(--bigTextSize, 1.1em);\n    --tableBaseTextSize: var(--smallTextSize, .8em);\n    --tableSmallerTextSize: var(--smallerTextSize, .75em);\n    --tableSmallestTextSize: var(--smallerTextSize, .618em);\n```\n\nYou may notice that title sizes overlap with base text sizes. This is intentional! You have the flexibility to have your smaller headings be the same as larger text, or to create new title sizes for your headings that won't overlap with the text. \n\n\n```\n    --tableBiggestTitleSize: var(--baseTitleSize, 1.5em);\n    --tableBiggerTitleSize: var(--biggestTextSize, 1.3em);\n    --tableBaseTitleSize: var(--tableBiggestTextSize);\n    --tableSmallerTitleSize: var(--tableBiggerTextSize);\n    --tableSmallestTitleSize: var(--tableBaseTextSize);\n```\n\n#### Variables Set Per Section\nThe `tbody`, `tfoot`, and `thead` all rely on a few key variables:\n\n* \u003cvar\u003e--tableCellSize\u003c/var\u003e\n* \u003cvar\u003e--tableHeaderSize\u003c/var\u003e\n* \u003cvar\u003e--borderWidth\u003c/var\u003e\n* \u003cvar\u003e--tablePrimaryBgColor\u003c/var\u003e\n* \u003cvar\u003e--tableAlternatingBgColor\u003c/var\u003e\n\nThe `\u003cth\u003e` and `\u003ctd\u003e` elements use these variables for their presentation. This is so that you can theme each section of the table without having to raise specificity. You could just add this in a later stylesheet:\n\n```\nthead {\n    --tablePrimaryBgColor: orange;\n}\n```\n\n\n\n\n#### Font families\nYou have two font families to choose from.\n\n```\n    --tableBaseFontFamily: var(--baseFontFamily,  'Georgia','Times New Roman', 'serif');\n    --tableTitleFontFamily: var(--titleFontFamily, 'Helvetica', 'Arial', 'sans-serif');\n```\n\n## Conventions and Standards\n\n### Style guide\nThe CSS follows the guidelines established [here](https://gist.github.com/paceaux/f31e278613ab29b74a412a7eb5046422).\n\n### Naming Conventions\nCSS Variable names follow a convention established [here](https://gist.github.com/paceaux/8638765e747f5bd6387b721cde99e066#sassscssstylus-naming).\n\n\n[license-image]: http://img.shields.io/npm/l/table-baseline.css.svg\n[license-url]: LICENSE\n[downloads-image]: http://img.shields.io/npm/dm/table-baseline.css.svg\n[downloads-url]: http://npm-stat.com/charts.html?package=table-baseline.css\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaceaux%2Ftable-baseline","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaceaux%2Ftable-baseline","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaceaux%2Ftable-baseline/lists"}