Considering Bedrock for new app - need your opinion

I’ve developed an app locally using wordpress as a sort of framework for it. I’m now needing to get other developers involved and am looking for the best workflow and deployment process for new team members and came across bedrock. I like a lot of the similarities to rails in terms of file structure and the way it manages dependencies. However, I’m a bit unsure on the following:

  1. I’m using wordpress multisite and multinetwork to structure my SAAS app. Is anyone aware if using bedrock’s file convention (or anything else) cause any issue with this?

  2. I’m using Buddypress as the community aspect of the app. Is there any limitation to using bp with bedrock? I saw this am a bit worried: BuddyPress with Bedrock + Sage

  3. is this just a new layer of abstraction that’s potential complications outweigh it’s benefits? I mean, I could just follow something like this and, while it’s not super sexy, would do the trick: https://zach-adams.com/2014/09/ultimate-wordpress-development-workflow/

1 Like
  1. Talk to @etc
  2. Never used buddypress
  3. Nope. Bedrock is merely a boilerplate that gets you up and running with the best development practices. Literally everywhere but WordPress applies these techniques.

Regarding #1 - No, Bedrock is fine.

If #2 is actually an issue (no one has confirmed), that’s means there are real bugs within BuddyPress code.

:-1: on the workflow from your link in #3. Definitely recommend using Bedrock with bedrock-ansible.

1 Like

@etc, per Austin, what are you thoughts on using wordpress multisite and multinetwork with bedrock? Good idea? any “gotchas” I need to watch out for?

Appreciate the advice.

And thanks, @austin, Coming from learning rails originally, conventions are what attract me to bedrock. My only concern is the learning curve for wp devs that aren’t familiar with these since wp has it’s own set of “conventions”.

curious, since I haven’t used it, in your experience what are the high-level benefits of using the bedrock workflow vs the one listed in that link?

Bedrock is a modern WordPress stack that gets you started with the best development tools, practices, and project structure.

★ Better WordPress project structure

The organization of Bedrock is similar to putting WordPress in its own subdirectory but with some improvements, including renaming wp-content/ to app/.

★ Dependency management with Composer

Manage your WordPress install and plugins with Composer, a PHP dependency manager. Composer will make development more reliable, help with team collaboration, and it helps maintain a better Git repository.

★ Automate your WordPress deployments

Capistrano will help you create a proper deployment process instead of manually FTPing files which is an error prone method. Automate your WordPress deployments and simplify it to a one command deploy process.

★ Manage server environments with Vagrant

Easily create development environments with Vagrant to help achieve development & production parity. Use our Ansible playbook to automatically configure WordPress app servers.

Forgive me, I could be getting caught up on semantics, but Bedrock is mostly a set of “best practices” not “conventions”.

For instance: using a package manager to wrangle third party dependencies is a best practice, not an arbitrary convention. The only thing I that is “opinionated” is the project structure I suppose. But even that allows you to follow best practices when it comes to keeping sensitive files out of the web root.

Definitely semantics but it’s better that I use the proper language anyway. Thanks for the correction and reply.

  1. No gotchas as long as you’re using subdomains. There are some issues with wordpress in a subdirectory, and subdirectory installations of multisite. This isn’t an issue specifically with Bedrock, though.

  2. Other than the fact that BuddyPress kind of stinks? No. It integrates fine. Just be forewarned that much of BP is proprietary and doesn’t follow WP convention (since it preceded it). E.g. the way BP handles profiles pictures leaves a lot to be desired.

  3. Bedrock isn’t informed just by WordPress best practices. It aims to be turn your WP project into one that is 12 Factor compliant. http://12factor.net/

Yes, you should absolutely use Bedrock. In fact, I refuse to work on any WP projects unless they follow these practices and format. (WP Skeleton is another option, I suppose if you’re just looking for proper file structure)

Note: the file structure is less about “copying Rails” and more about separating out dependency from custom code, etc. It’s a common convention that’s used in a majority of the “modern” frameworks.

3 Likes

(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)