{"id":20157471,"url":"https://github.com/desaiuditd/wp-skeleton","last_synced_at":"2025-04-09T22:53:06.831Z","repository":{"id":39323039,"uuid":"214740370","full_name":"desaiuditd/wp-skeleton","owner":"desaiuditd","description":"A skeleton repo as a starter for WordPress websites using Bedrock. https://roots.io/bedrock/. Local Development via Lando. https://lando.dev/","archived":false,"fork":false,"pushed_at":"2025-03-11T23:11:44.000Z","size":2061,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T22:53:01.283Z","etag":null,"topics":["bedrock","bedrock-wordpress-installation","docker","docker-compose","docker-image","dockerfile","lando","local-development","roots-io","skeleton","wordpress"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/desaiuditd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2019-10-13T01:13:08.000Z","updated_at":"2025-03-09T00:41:22.000Z","dependencies_parsed_at":"2024-03-04T19:56:51.710Z","dependency_job_id":"e6197888-63fc-49e5-94cd-68edf257ace0","html_url":"https://github.com/desaiuditd/wp-skeleton","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desaiuditd%2Fwp-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desaiuditd%2Fwp-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desaiuditd%2Fwp-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desaiuditd%2Fwp-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/desaiuditd","download_url":"https://codeload.github.com/desaiuditd/wp-skeleton/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248125638,"owners_count":21051766,"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":["bedrock","bedrock-wordpress-installation","docker","docker-compose","docker-image","dockerfile","lando","local-development","roots-io","skeleton","wordpress"],"created_at":"2024-11-13T23:46:23.125Z","updated_at":"2025-04-09T22:53:06.801Z","avatar_url":"https://github.com/desaiuditd.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wp-skeleton\nA skeleton repo as a starter for WordPress websites using [Bedrock](https://roots.io/bedrock/) and [Lando](https://lando.dev/).\n\nProject not maintained actively.\n\n![Build](https://github.com/desaiuditd/wp-skeleton/workflows/Build/badge.svg)\n\n# Bedrock\n\nBedrock is a modern WordPress stack that helps you get started with the best development tools and project structure.\n\nMuch of the philosophy behind Bedrock is inspired by the [Twelve-Factor App](http://12factor.net/) methodology including the [WordPress specific version](https://roots.io/twelve-factor-wordpress/).\n\n## Features\n\n* Better folder structure\n* Dependency management with [Composer](https://getcomposer.org)\n* Easy WordPress configuration with environment specific files\n* Environment variables with [Dotenv](https://github.com/vlucas/phpdotenv)\n* Autoloader for mu-plugins (use regular plugins as mu-plugins)\n* Enhanced security (separated web root and secure passwords with [wp-password-bcrypt](https://github.com/roots/wp-password-bcrypt)\n\n## Bedrock Documentation\n\nBedrock documentation is available at [https://roots.io/bedrock/docs/](https://roots.io/bedrock/docs/).\n\n# Lando\n\nLando vastly simplifies local development and DevOps so you can focus on what's important;\ndelivering value to your clients and customers. And it's free and Open Source.\n\n## Lando Documentation\n\nLando documentation is available at [https://docs.lando.dev/](https://docs.lando.dev/).\n\n# How to use this skeleton\n\n```bash\nmkdir my-wordpress-website\ncd my-wordpress-website\nwget -qO wps bit.ly/wp-skeleton \u0026\u0026 bash wps\nrm -rf wps\n```\n\n# Prerequisite\n\n## MacOS\n\n### Homebrew\n\n```bash\n/usr/bin/ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"\n```\n\nFollow the instructions from here - https://docs.brew.sh/Installation\n\n### Docker\n\n```bash\nbrew cask install docker\n```\n\n### Lando\n\n```bash\nbrew cask install lando\n```\n\nThis will eventually install Docker as well, as a dependency, if it's already not installed.\n\nFollow the instructions from here - https://docs.lando.dev/basics/installation.html#macos\n\nEnable the SSL in local.\n\n```bash\nsudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/.lando/certs/lndo.site.pem\n```\n\n## Ubuntu\n\n### Docker\n\nInstall Docker Desktop (Community Edition) by following instructions from its official website https://docs.docker.com/install/linux/docker-ce/ubuntu/.\n\n```bash\n# Update the package manager.\nsudo apt-get update\n\n# Install dependencies.\nsudo apt-get install \\\n    apt-transport-https \\\n    ca-certificates \\\n    curl \\\n    gnupg-agent \\\n    software-properties-common \\\n\t-y\n\n# Add Docker GPG Key.\ncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -\n\n# Verify Docker GPG Key.\nsudo apt-key fingerprint 0EBFCD88\n\n# Add Docker repo.\nsudo add-apt-repository \\\n   \"deb [arch=amd64] https://download.docker.com/linux/ubuntu \\\n   $(lsb_release -cs) \\\n   stable\"\n\n# Update the package manager.\nsudo apt-get update\n\n# Install docker\nsudo apt-get install docker-ce docker-ce-cli containerd.io -y\n```\n\n### Lando\n\nFollow the instructions from [here](https://docs.lando.dev/basics/installation.html#linux) and install Lando.\n\n- Download the `*.deb` file of the latest version from the [Github releases page](https://github.com/lando/lando/releases).\n- Run the required package installation command for your os eg `sudo dpkg -i lando-stable.deb`.\n\t- Note that you may also be able to just double click on the package and install via your distributions \"Software Center\" or equivalent.\n- Enable the SSL in local.\n\n```bash\nsudo cp -r ~/.lando/certs/lndo.site.pem /usr/local/share/ca-certificates/lndo.site.pem\nsudo cp -r ~/.lando/certs/lndo.site.crt /usr/local/share/ca-certificates/lndo.site.crt\nsudo update-ca-certificates\n```\n\n# Local Development\n\n- Create `.env` file for the project.\n\t- `cp .env.example .env`\n\t- Change these values, if needed. `DB_NAME`, `DB_USER`, `DB_PASSWORD`, `DB_HOST`, `WP_HOME`. (Optional, in case of default setup with Lando)\n\t- Generate secretes with [WordPress salts generator](https://roots.io/salts.html) provided by Roots.\n\t\t- `AUTH_KEY`, `SECURE_AUTH_KEY`, `LOGGED_IN_KEY`, `NONCE_KEY`, `AUTH_SALT`, `SECURE_AUTH_SALT`, `LOGGED_IN_SALT`, `NONCE_SALT`\n- Run `lando start`. Initial start may take some time.\n\n# Local URLs\n\n- WordPress Front-end: https://wp-skeleton.lndo.site\n- WordPress Admin: https://wp-skeleton.lndo.site/wp/wp-admin/\n- phpMyAdmin: https://db-wp-skeleton.lndo.site\n\n# SSH into Containers\n\n- WordPress App Container: `lando ssh -s appserver`\n- Node Container for building assets: `lando ssh -s assets`\n- Database Container: `lando ssh -s database`\n\n# Check Linting in local.\n\n- Lint JS/CSS/SCSS files in local: `lando npm run lint`\n- Lint PHP files in local (phpcs): `lando ssh -s appserver -c \"./vendor/bin/phpcs -p -s -v --standard=phpcs.xml --extensions=php ./web/app ./config\"`\n- Scan phpmd in local: `lando ssh -s appserver -c \"./vendor/bin/phpmd web/app,config text phpmd.xml --suffixes php\"`\n\n# Themes\n\nAdd theme(s) in `web/app/themes/` as you would for a normal WordPress site.\n\nAlso, override the `WP_DEFAULT_THEME` constant to set the theme directory in `config/application.php`\n\nAdd below line\n\n```php\nConfig::define( 'WP_DEFAULT_THEME', Config::get( 'CONTENT_DIR' ) . '/themes' );\n```\n\nafter the custom content directory is defined.\n\n```php\n/**\n * Custom Content Directory\n */\nConfig::define( 'CONTENT_DIR', '/app' );\nConfig::define( 'WP_CONTENT_DIR', $webroot_dir . Config::get( 'CONTENT_DIR' ) );\nConfig::define( 'WP_CONTENT_URL', Config::get( 'WP_HOME' ) . Config::get( 'CONTENT_DIR' ) );\n```\n\n# Plugins\n\nAdd plugin(s) in `web/app/mu-plugins/` as you would for a normal WordPress site.\n\nAlso, whitelist the plugin in `.gitignore` file, so that you can commit the files into the repo.\n\n# ToDO\n\n- husky/lint-staged and pre-commit hooks are probably not working.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdesaiuditd%2Fwp-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdesaiuditd%2Fwp-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdesaiuditd%2Fwp-skeleton/lists"}