{"id":22327214,"url":"https://github.com/automattic/newspack-theme","last_synced_at":"2026-05-07T17:01:26.609Z","repository":{"id":38325177,"uuid":"174008387","full_name":"Automattic/newspack-theme","owner":"Automattic","description":"A theme for Newspack. ","archived":false,"fork":false,"pushed_at":"2025-04-11T16:24:43.000Z","size":47081,"stargazers_count":319,"open_issues_count":108,"forks_count":69,"subscribers_count":27,"default_branch":"trunk","last_synced_at":"2025-04-11T23:20:09.724Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://newspack.com","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Automattic.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-05T19:33:03.000Z","updated_at":"2025-04-07T19:42:59.000Z","dependencies_parsed_at":"2024-02-12T04:23:32.560Z","dependency_job_id":"640d1691-1861-4251-8eba-050013fe5965","html_url":"https://github.com/Automattic/newspack-theme","commit_stats":null,"previous_names":[],"tags_count":376,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Automattic%2Fnewspack-theme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Automattic%2Fnewspack-theme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Automattic%2Fnewspack-theme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Automattic%2Fnewspack-theme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Automattic","download_url":"https://codeload.github.com/Automattic/newspack-theme/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248493027,"owners_count":21113184,"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-12-04T03:08:48.691Z","updated_at":"2026-05-07T17:01:26.600Z","avatar_url":"https://github.com/Automattic.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Newspack\n\nWelcome to the Newspack theme repository on GitHub. Here you can browse the source, look at open issues and keep track of development. We also recommend everyone [follow the Newspack blog](https://newspack.com/) to stay up to date about everything happening in the project.\n\nThe Newspack theme is a forward-looking news theme designed and developed to be highly customizable with the WordPress block editor.\n\nNewspack is an open-source publishing platform built on WordPress for small to medium sized news organizations. It is an “opinionated” platform that stakes out clear, best-practice positions on technology, design, and business practice for news publishers.\n\n## How to install Newspack on your site\n\nIf you'd like to install Newspack on your self-hosted site or want to try Newspack out, the easiest way to do so is to [download the latest plugin release](https://github.com/Automattic/newspack-plugin/releases) and [the latest theme release](https://github.com/Automattic/newspack-theme/releases). Upload them using the plugin or theme installer in your WordPress admin interface. To take full advantage of Newspack, the plugin and theme should be run together, but each should also work fine individually.\n\n## Reporting Security Issues\n\nTo disclose a security issue to our team, [please submit a report via HackerOne here](https://hackerone.com/automattic/).\n\n## Contributing to Newspack\n\nIf you have a patch or have stumbled upon an issue with the Newspack plugin/theme, you can contribute this back to the code. [Please read our contributor guidelines for more information on how you can do this.](https://github.com/Automattic/newspack-theme/blob/trunk/.github/CONTRIBUTING.md)\n\n### Development\n\nThe Newspack theme repository contains the Newspack parent theme in a subdirectory. This means you cannot `git clone` the theme directly to the wp-content/themes directory and have it work. The recommended approach is to `git clone` the repository to another location, and symlink the `newspack-theme/newspack-theme` directory -- the folder containing the actual theme -- to the `wp-content/themes` directory of your development website.\n\n- Run `npm install \u0026\u0026 composer install` to install the dependencies.\n- Run `npm start` to compile the SCSS and JS files, and start file watcher.\n- Run `npm run build` to perform a single compilation run.\n\n### Repository Structure\n\nThe repository contains the base theme and five child themes:\n\n- `newspack-theme/` — Base theme. All child themes extend this.\n- `newspack-joseph/`, `newspack-katharine/`, `newspack-nelson/`, `newspack-sacha/`, `newspack-scott/` — Child themes. Cosmetic variants only (colors, typography accents); identical in features.\n\nThe build tooling at the repo root compiles assets for all six themes in a single pass. There is no per-theme build command.\n\n### PHP Structure\n\nKey files in `newspack-theme/inc/`:\n\n| File | Purpose |\n|------|---------|\n| `customizer.php` | All Customizer settings: colors, typography, header/footer layout |\n| `template-functions.php` | Template hooks, body class additions, content filters |\n| `template-tags.php` | Template tag functions for post meta, author info, dates, reading time |\n| `color-patterns.php` | Converts Customizer color settings into inline CSS |\n| `typography.php` | Font loading and custom typography CSS generation |\n| `icon-functions.php` | SVG icon helpers |\n\nPlugin integrations (WooCommerce, Jetpack, Yoast, etc.) each have their own file in `inc/` and are only loaded when the relevant plugin is active.\n\n### SCSS Structure\n\nSource SCSS lives in `newspack-theme/sass/` and is compiled by a custom Node script (`scripts/compile-scss.js`) that handles all themes, RTL generation, and minification.\n\nKey subdirectories:\n\n| Directory | Contents |\n|-----------|----------|\n| `blocks/` | Gutenberg block styles |\n| `elements/` | Lists, tables, and basic HTML elements |\n| `layout/` | Grid and layout utilities |\n| `mixins/` | SCSS mixins |\n| `modules/` | Component modules (cards, bylines, etc.) |\n| `navigation/` | Menu and nav styles |\n| `plugins/` | Integration styles (WooCommerce, Newsletters, Sponsors, etc.) |\n| `site/` | Header, footer, sidebar styles |\n\nChild themes have their own `sass/` directories with override files compiled alongside the base theme.\n\n### Child Themes\n\nThe child themes share the base theme's features entirely — differences are purely cosmetic. To switch between child themes, use **Appearance \u003e Themes** in wp-admin. Switching via the Customizer does not reliably transfer settings between themes.\n\nEach child theme follows the same structure:\n\n```\nnewspack-\u003cname\u003e/\n├── functions.php         # Enqueues child styles, hooks color/typography CSS\n├── style.css             # Theme header + generated CSS\n├── style-editor.css      # Generated editor styles\n├── style-rtl.css         # Generated RTL styles\n├── inc/\n│   ├── child-color-patterns.php  # Child-specific color CSS generation\n│   └── child-typography.php     # Child-specific typography CSS generation\n└── sass/                 # SCSS overrides compiled alongside the base theme\n```\n\n## Support or Questions\n\nThis repository is not suitable for support or general questions about Newspack. Please only use our issue trackers for bug reports and feature requests, following [the contribution guidelines](https://github.com/Automattic/newspack-theme/blob/trunk/.github/CONTRIBUTING.md).\n\nSupport requests in issues on this repository will be closed on sight.\n\n## License\n\nNewspack is licensed under [GNU General Public License v2 (or later)](https://github.com/Automattic/newspack-theme/blob/trunk/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautomattic%2Fnewspack-theme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautomattic%2Fnewspack-theme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautomattic%2Fnewspack-theme/lists"}