{"id":23524509,"url":"https://github.com/nypublicradio/pattern-lab","last_synced_at":"2026-01-25T01:02:33.507Z","repository":{"id":46064327,"uuid":"170371121","full_name":"nypublicradio/pattern-lab","owner":"nypublicradio","description":null,"archived":false,"fork":false,"pushed_at":"2023-04-10T20:36:47.000Z","size":6235,"stargazers_count":1,"open_issues_count":17,"forks_count":2,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-05-14T06:28:53.706Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Twig","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/nypublicradio.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}},"created_at":"2019-02-12T18:40:41.000Z","updated_at":"2023-02-27T14:40:52.000Z","dependencies_parsed_at":"2025-05-14T06:20:19.596Z","dependency_job_id":"981a74a6-290c-45bf-8d14-61db4c611982","html_url":"https://github.com/nypublicradio/pattern-lab","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/nypublicradio/pattern-lab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nypublicradio%2Fpattern-lab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nypublicradio%2Fpattern-lab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nypublicradio%2Fpattern-lab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nypublicradio%2Fpattern-lab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nypublicradio","download_url":"https://codeload.github.com/nypublicradio/pattern-lab/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nypublicradio%2Fpattern-lab/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28740399,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T22:12:27.248Z","status":"ssl_error","status_checked_at":"2026-01-24T22:12:10.529Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":"2024-12-25T18:16:18.739Z","updated_at":"2026-01-25T01:02:33.486Z","avatar_url":"https://github.com/nypublicradio.png","language":"Twig","readme":"# New York Public Radio Design System\n\n## Installation\n\n### Prerequisites:\n\n- [Node](https://nodejs.org/en/) (10+)\n- [npm](https://nodejs.org/) (6+)\n- [Composer](https://getcomposer.org/)\n- [Gulp](https://gulpjs.com/)\n\n### Installing development dependencies\n\nIn the docroot run:\n\n```sh\nnpm run build\n```\n\nThis will create the `node_modules` directory and download all dev dependencies,\nsetup \u0026 build the Pattern Lab environment, compile all SCSS into CSS, then move\nthe generated CSS into the `/public` site.\n\n## Developing and styling patterns\n\nWhen working with the theme, there's a few development options available.\nThese commands must be run from the docroot.\n\n### Watch for file changes\n\nThis will start up a local server via [Browsersync](https://browsersync.io/).\nIt proxies the local domain `nypr.test`.\n\n```sh\ngulp\n```\n\n### Generating theme-specific CSS files\n\n```sh\ngulp sass\n```\n\n### Rebuild Pattern Lab\n\n```sh\ngulp patterns-change\n```\n\n## Generating theme asset files\n\n```sh\ngulp build-theme\n```\n\nThis will generate all CSS files, compile a new Pattern Lab `public` site,\nand move the generated CSS into the new `public` site. You might use this after\nyou pull in some theme changes and want to view them on your local environment.\n\n_For a larger list of `gulp` commands, see the [gulp file](gulpfile.js)_\n\n\n### Local Pattern Lab development server settings\n\n- Host name: `nypr.test`. (this is what Browsersync uses to proxy the localhost\nserver)\n\n## Deployments\nWe use circleci to handle automated deployments. The configuration is in the [circle.yml](https://github.com/nypublicradio/pattern-lab/blob/master/circle.yml) file. \nAt a high level, whenever a commit is made to master, the `public` site is built and the resulting `/public/css/themes/default/default.css` file is shipped to the gothamist-web-client's DEMO static asset S3 bucket.\nTo deploy to the PROD bucket, simply make a new github release (we follow semantic versioning) and the automated workflow will trigger.\n\nThis works by using the `gulp ship-sass` task (See the code [here](https://github.com/nypublicradio/pattern-lab/blob/master/gulpfile.js#L171-L196)).\n\nMaking commits to branches will trigger the build step of the automated deployment, but not the deploy step.\nThis allows you to see if your changes compile and build properly before merging to master.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnypublicradio%2Fpattern-lab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnypublicradio%2Fpattern-lab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnypublicradio%2Fpattern-lab/lists"}