{"id":18434711,"url":"https://github.com/assemble/assemble-pattern-lab","last_synced_at":"2025-07-09T11:03:08.231Z","repository":{"id":15054436,"uuid":"17780577","full_name":"assemble/assemble-pattern-lab","owner":"assemble","description":"An easier-to-use, cleaner and more extensible build system for pattern-lab.","archived":false,"fork":false,"pushed_at":"2014-03-17T10:02:11.000Z","size":1140,"stargazers_count":26,"open_issues_count":1,"forks_count":5,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-06-02T17:25:40.317Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/assemble.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE-CC","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-15T17:04:59.000Z","updated_at":"2019-10-12T18:18:11.000Z","dependencies_parsed_at":"2022-08-27T21:51:12.553Z","dependency_job_id":null,"html_url":"https://github.com/assemble/assemble-pattern-lab","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/assemble/assemble-pattern-lab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/assemble%2Fassemble-pattern-lab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/assemble%2Fassemble-pattern-lab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/assemble%2Fassemble-pattern-lab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/assemble%2Fassemble-pattern-lab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/assemble","download_url":"https://codeload.github.com/assemble/assemble-pattern-lab/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/assemble%2Fassemble-pattern-lab/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263137570,"owners_count":23419308,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-06T06:05:02.639Z","updated_at":"2025-07-09T11:03:08.176Z","avatar_url":"https://github.com/assemble.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# assemble-pattern-lab [![NPM version](https://badge.fury.io/js/assemble-pattern-lab.png)](http://badge.fury.io/js/assemble-pattern-lab)\n\n\u003e An easier-to-use and more extensible build system for pattern-lab.\n\nThis project uses [Assemble](https://github.com/assemble/assemble) to build projects with [pattern lab](http://pattern-lab.info/) conventions.\n\nNote that _this isn't 100% feature complete, and the focus was mostly on implementing the patterns - not the actual demo site_, but this project does implement the actual patterns, e.g. the important parts, and you can easily add (or [request](https://github.com/jonschlinkert/assemble-pattern-lab/issues)) any functionality you require.\n\nAlso, there are a few differences in how this project handles templates. Instead of having to namespace partials, like `{{\u003e organisms-latest-posts }}`, and then using a complex regex system for dynamically renaming these partials according to how they are organized in folders, here you can simply use `{{organism \"latest-posts\"}}`.\n\nThis has several advantages:\n\n* Store your patterns wherever you want them, just tell Assemble where they are.\n* We're adhering to mustache/handlebars conventions instead of working around them.\n* We can easily extend and add new patterns, or allow metadata to be passed as context to templates and so on.\n\n## Getting Started\n### Download Options\n\n* Either [download the project]({https://github.com/assemble/assemble-pattern-lab/archive/master.zip}) from GitHub, or\n* Use git to clone the project: `git clone https://github.com/assemble/assemble-pattern-lab.git`\n\n### Install dependencies\n\nInstall the necessary dependencies, including Assemble and Grunt:\n\n```bash\nnpm i\n```\n\n### Build\n\nWith everything downloaded and installed, build the project by running:\n\n```bash\ngrunt assemble\n```\n\n## Usage\nThe following patterns have been implements:\n\n* `atoms`: used in templates with `{{atoms \"foo\"}}`\n* `molecules`: used in templates with `{{molecules \"foo\"}}`\n* `organisms`: used in templates with `{{organisms \"foo\"}}`\n* `templates`: used in templates with `{{templates \"foo\"}}`\n* `pages`: Pages are specified using `src` property or `files` object/arrays in the Gruntfile config (see below)\n\nFor any templates to actually be found during the build, you'll have to first tell Assemble where to find them in Gruntfile, like so:\n\n```js\nassemble: {\n  options: {\n    // Pattern Lab templates\n    patterns: {\n      atoms: ['src/atoms/**/*.hbs'],\n      molecules: ['src/molecules/**/*.hbs'],\n      organisms: ['src/organisms/**/*.hbs'],\n      templates: ['src/templates/**/*.hbs'],\n    }\n  },\n  site: {\n\n    // `pages` are defined here (you can use any of the Grunt files\n    // patterns, e.g. src-dest, files object, files array, etc)\n    files: {\n      '_gh_pages/': ['src/pages/*.hbs']\n    }\n  }\n}\n```\n\n## Contributing\nAll contributions are welcome! If you like the project, _stars and tweets_ are a great way to show your support. If you want to take a more active role and help with documentation, writing unit tests, addressing issues or whatever seems interesting, please let us know, we'd be happy to help you get started!\n\nAlso, we use [Verb](https://github.com/assemble/verb) for documentation, so don't edit the readme or other docs directly. Please edit the templates in the [docs directory](./docs) and then run `verb` to build them before you do a pull request. Thanks!\n\n## Authors\n\n**Jon Schlinkert**\n\n+ [github/jonschlinkert](https://github.com/jonschlinkert)\n+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert)\n\n## License\nCopyright (c) 2014 Jon Schlinkert, contributors.\nReleased under the MIT, Creative Commons Attribution 3.0 Unported License licenses\n\n***\n\n_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on March 17, 2014._","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fassemble%2Fassemble-pattern-lab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fassemble%2Fassemble-pattern-lab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fassemble%2Fassemble-pattern-lab/lists"}