{"id":16173330,"url":"https://github.com/onemohrtime/timber-starter-theme","last_synced_at":"2025-04-07T08:55:19.351Z","repository":{"id":245141068,"uuid":"816605205","full_name":"OneMohrTime/timber-starter-theme","owner":"OneMohrTime","description":"Base template for WordPress setup using Composer, ACF, Timber, and SCSS","archived":false,"fork":false,"pushed_at":"2025-03-29T18:05:24.000Z","size":3696,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T15:14:29.401Z","etag":null,"topics":["client-project","timber","timber-theme","twig","wordpress","wordpress-theme"],"latest_commit_sha":null,"homepage":"","language":"SCSS","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/OneMohrTime.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2024-06-18T04:31:23.000Z","updated_at":"2025-02-04T18:47:19.000Z","dependencies_parsed_at":"2024-06-27T06:32:40.198Z","dependency_job_id":"66e7927a-9bce-4c95-9e0a-de4f3fda6133","html_url":"https://github.com/OneMohrTime/timber-starter-theme","commit_stats":{"total_commits":129,"total_committers":1,"mean_commits":129.0,"dds":0.0,"last_synced_commit":"77a2980df401aa215edaf68b6997d82ee4c243b5"},"previous_names":["onemohrtime/simplified-destinations"],"tags_count":5,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneMohrTime%2Ftimber-starter-theme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneMohrTime%2Ftimber-starter-theme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneMohrTime%2Ftimber-starter-theme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OneMohrTime%2Ftimber-starter-theme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OneMohrTime","download_url":"https://codeload.github.com/OneMohrTime/timber-starter-theme/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247623010,"owners_count":20968574,"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":["client-project","timber","timber-theme","twig","wordpress","wordpress-theme"],"created_at":"2024-10-10T04:08:24.654Z","updated_at":"2025-04-07T08:55:19.330Z","avatar_url":"https://github.com/OneMohrTime.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OneMohrTime Timber Starter Theme\n\n## Overview\nThis WordPress starter theme is built on top of Timber and DDEV to provide a robust and flexible foundation for creating modern, maintainable, and performant WordPress websites. It was written by [@onemohrtime](https://github.com/OneMohrTime), with a _**LOT**_ of inspiration and education from [@bgrrtt](https://github.com/bgrrtt).\n\nYou can also use the [WordPress theme](/wp-content/themes/timber-starter-theme/) alone, without the environment.\n\n## Features\n- **Timber Integration:** Leverages the power of the Timber library to separate PHP and HTML, allowing for clean and readable templating using the Twig language.\n- **DDEV Environment:** Easily set up your local development environment with DDEV for a seamless and containerized development experience.\n- **Semantic HTML:** Ensures semantic and accessible HTML markup.\n- **Responsive Design:** Includes a responsive and mobile-friendly design out-of-the-box.\n\n## Requirements\nWe'll be working with the latest and greatest WordPress templating system, make sure you have:\n- [WordPress 6.x](https://wordpress.org/download/)\n- [Timber 2.x](https://timber.github.io/docs/v2/installation/installation/)\n\nThis project also assumes that you have:\n- [PHP 8.2](https://www.php.net/manual/en/install.php)\n- [Node 20.x](https://nodejs.org/en/download/package-manager) ([NPM 10.x](https://www.npmjs.com/))\n- [Composer 2.x](https://getcomposer.org/doc/00-intro.md)\n- [DDEV](https://ddev.com/get-started/)\n\nIt's _highly_ recommended that you have:\n- [Git Flow](https://nvie.com/posts/a-successful-git-branching-model/) for maintaining git history\n- [WP-CLI](https://wp-cli.org/) for WordPress shortcuts\n- [n](https://github.com/tj/n) or [NVM](https://github.com/nvm-sh/nvm) for Node version management\n\n## Installation\n\n### 1. Git the Repository\n```bash\ngit clone git@github.com:OneMohrTime/timber-starter-theme.git\ncd timber-starter-theme\n```\n\nI would highly suggest having **Git Flow** installed as well. There's also a little [cheatsheet](https://danielkummer.github.io/git-flow-cheatsheet/) to explain it.\n```bash\nbrew install git-flow # optional\ngit flow init -d # add the `-d` flag for 'defaults'\n```\n\n### 2. Install WordPress\n\n#### ZIP Install\nDownload the latest version of WordPress from the official website. Extract the ZIP file and move the contents into the root of your project directory. We will deal with the `wp-config.php` in the **DDEV** step.\n\n#### WP-CLI Install\nIf you have **WP-CLI** installed, you can quickly download and configure WordPress by running the following commands:\n```bash\nwp core download\n\n# we'll be configuring the environment in DDEV, otherwise you could continue on...\n\n# wp config create --dbname=your_db_name --dbuser=your_db_user --dbpass=your_db_password --dbhost=your_db_host\n# wp db create\n# wp core install --url=\"your_site_url\" --title=\"Your Site Title\" --admin_user=\"admin\" --admin_password=\"admin_password\" --admin_email=\"admin_email\"\n```\n\n### 3. Set Up DDEV\nEnsure you have [DDEV installed](https://ddev.readthedocs.io/en/stable/users/install/ddev-installation/) (mine is set up through [Docker](https://docs.docker.com/desktop/install/mac-install/)). If you have a website URL in mind already, alter the first line of `.ddev/config.yaml` to be the domain name, without \".com\".\n\n```yaml\nname: timber-wordpress # this will become timber-wordpress.ddev.site\n```\n\nThen, run:\n```bash\nddev start\n```\nYour site (with the default WordPress theme) should now be viewable at `https://timber-wordpress.ddev.site`. You should also see a `wp-config-ddev.php` in the root folder. You can now continue with the WordPress installation.\n\n### 4. Install Node.js Dependencies\n\nMake sure you are using the version of Node.js specified in the `.n-node-version` or `.nvmrc`.\n```bash\nnpm install\n```\n\n### 5. Install Composer Dependencies\nSome developers prefer to have Timber installed as a theme dependency, so they would run this command from the theme root (ex: /wp-content/themes/my-theme/). I'm one of those developers, so run:\n\n```bash\ncd wp-content/themes/timber-starter-theme\ncomposer install\n# go back to root directory for next commands\ncd ../../..\n```\n\n### 6. Install the required WordPress plugins\n#### Advanced Custom Fields Pro\nTo install ACF Pro, first, download the ZIP file from your [ACF account](https://www.advancedcustomfields.com/my-account/view-licenses/) and install it by uploading it on the Plugins page.\n\n#### Classic Editor \u0026 Widgets\n[Classic Editor](https://wordpress.org/plugins/classic-editor/) is an official plugin maintained by the WordPress team that restores the previous (“classic”) WordPress editor and the “Edit Post” screen. It makes it possible to use plugins that extend that screen, add old-style meta boxes, or otherwise depend on the previous editor.\n\n[Classic Widgets](https://wordpress.org/plugins/classic-widgets/) is an official plugin maintained by the WordPress team that restores the previous (\"classic\") WordPress widgets settings screens.\n\n#### Yoast SEO\nAutomate technical SEO and make optimizing content a breeze with the most popular WordPress [SEO plugin](https://yoast.com/wordpress/plugins/seo/).\n\n#### Additional (highly recommended)\n- [Site Kit by Google](https://sitekit.withgoogle.com/)\n- [RealFaviconGenerator](https://realfavicongenerator.net/)\n- [Redirection](https://redirection.me/)\n- [WordPress Importer](https://wordpress.org/plugins/wordpress-importer/)\n\n### 7. Build!\nFrom here, you can compile your assets with:\n```bash\n# Compile, watch for any changes, immediately recompile\nnpm run watch\n# Compile for local environments. Can also be `npm run dev`\nnpm run development\n# Compile for prodcution environments. Can also be `npm run prod` or `npm run build`\nnpm run production\n```\n\n### 8. Admin\nFirst, activate the necessary plugins on the [Plugins](https://timber-wordpress.ddev.site/wp-admin/plugins.php) tab.\n- **Required:** Advacnced Custom Fields PRO\n- **Required:** Classic Editor\n- **Required:** Classic Widgets\n- **Required:** Yoast SEO\n- **Recommended:** Google Site Kit\n- **Recommended:** RealFaviconGenerator\n- **Recommended:** Redirection\n- **Recommended:** WordPress Updater\n\nSecond, you're going to want to sync the Advanced Custom Fields, from our theme root directory `acf-json/`. This can be found within the [ACF tab](https://timber-wordpress.ddev.site/wp-admin/edit.php?post_type=acf-field-group\u0026post_status=sync).\n\nUpdate some of the website's main settings. These are not required, but are recommended—especially if you're going to be uploading this database to _production_.\n- Add a favicon and choose your timezone [here](https://timber-wordpress.ddev.site/wp-admin/options-general.php)\n- Set a home page and news/blog page [here](https://timber-wordpress.ddev.site/wp-admin/options-reading.php)\n- Set thumbnails to _320\u0026times;320_, uncheck _crop thumbnails ..._,\u003cbr\u003eset medium to _768\u0026times;768_,\u003cbr\u003euncheck _organize media..._ [here](https://timber-wordpress.ddev.site/wp-admin/options-media.php)\n- Set permalinks to _Post Name_, or your own custom configuration [here](https://timber-wordpress.ddev.site/wp-admin/options-permalink.php)\n\nActivate your new theme in [Appearances \u003e Themes](https://timber-wordpress.ddev.site/wp-admin/themes.php).\n\n## Additional Credits\n\nThe missing image placeholder is from the [Mackinaw Bridge](https://unsplash.com/photos/white-truck-on-gray-road-during-daytime-99HLgU4IHLY?utm_content=creditCopyText\u0026utm_medium=referral\u0026utm_source=unsplash) by fellow NMU Wildcat [Riley Crawford](https://unsplash.com/@ricrawfo?utm_content=creditCopyText\u0026utm_medium=referral\u0026utm_source=unsplash)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonemohrtime%2Ftimber-starter-theme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fonemohrtime%2Ftimber-starter-theme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonemohrtime%2Ftimber-starter-theme/lists"}