Essential Tools
You’ll need these essential tools for day-to-day development, so ensure you have access to them. You should be given access to these as part of your onboarding, but if not, ask your manager. Also, please make sure to enable two-factor authentication where possible.Laptop and OS
Most of our team uses Apple laptops, and much of the guidance reflects this. You are free to choose an alternative, and we have some developers who use Windows or Linux, but the rest of the team may not provide as much support.Version Control
GitHub
We use GitHub extensively, so you will need a GitHub account. You’ll also need git installed on your computer.
GitKraken
We use GitKraken as our Git GUI of choice. You will need to be added to our company account.
Communication
Slack
The main way we communicate. Download the app on your laptop. Make sure to join the #development channel! Installing the app on your phone can be useful too, but be careful that you’re able to switch off at the end of the day!
Google Meet
What we use for most of our calls.
Zoom
There are rare instances where we need to use Zoom.
Webex
Some of our clients use Webex exclusively and company policies do not allow them to use anything else.
Microsoft Teams
Some of our clients use Teams internally and will expect us to use it if they are the ones booking the meetings.
Local Development
LocalWP
This is the most common way to run WordPress sits locally. You can quickly spin up a WordPress site in seconds and it comes with a lot of useful features.
WordPress VIP Local Environment
The WordPress VIP Local Environmentis a feature built into VIP-CLI for creating and controlling an environment on a supported local machine that mimics an environment running on the VIP Platform.
CLIs and More
Node.JS
You will need this to run most local build processes. We recommend installing Node using nvm so that it is easier to switch between different versions depending on your project.
Yeoman
We use Yeoman to quickly scaffold new WordPress themes and plugins. You can learn more about that in our TK-Quickstart repository
WP-CLI
This comes included with Local if you right-click your site and select “Open Site Shell”. We use this to run commands on our local WordPress sites and develop our custom commands.
VIP-CLI
Want to run commands on your VIP site? VIP-CLI is the way to go. You can also use it to spin up a local VIP environment.
Code Editors
VS Code
We use VS Code for most of our development. It is free and open source, and has a huge ecosystem of extensions.
PHP Storm
We also have a few developers who use PHP Storm. It is a paid product, but has a lot of useful features for WordPress development.
Terminal
Terminal.app
This is the default terminal application that comes with MacOS. It is fine to use, but there are better options available.
Warp*
Warp is a terminal app that is powered by AI. It is free to use, but you need to create an account.
iTerm
iTerm is a popular alternative to Terminal.app. It has a lot of useful features, and is free to use.
Hyper
Hyper is a terminal app that is built using web technologies. It is free to use.
Project Management
Jira
This is our project management tool of choice. It is where you will find all projects, and where tickets will be assigned for work.
Confluence
We use Confluence to document our processes and store information about our projects.
Quality Assurance
For a list of all the tools and services we use for quality assurance, please see the Quality Assurance section of the handbook.Optional tools
None of these tools are essential, but some developers at Trew Knowledge use them as part of their setup. You won’t need to install all of them right away, but take a look, and you can install things as and when you need them.Database management application.
API tool.
Not essential, but can be really useful if you’re doing a lot of work with APIs.- Postman. Also available as a VS Code extension.
Setting up your code editor
VS Code
VS Code
Some useful extensions and settings.
- Extensions
- Settings
| Name | Description |
|---|---|
| GitHub Copilot | AI pair programmer |
| GitHub Copilot Chat | Chat with GitHub Copilot |
| Playwright Test for VSCode | Write Playwright tests |
| Auto Import | Automatically finds, parses and provides code actions and code completion for all available imports. Works with Typescript and TSX. |
| CodeSnap | Quickly create beautiful code screenshots |
| Error Lens | Highlights lines with errors, warnings, and other annotations |
| ESLint | Integrates ESLint JavaScript into VS Code. |
| File Utils | A convenient way of creating, duplicating, moving, renaming and deleting files and directories. |
| Font Preview | Preview fonts in VS Code |
| GitHub Actions | Provides syntax highlighting, linting, and IntelliSense for GitHub Actions workflow files in Visual Studio Code. |
| GitLens | GitLens supercharges the Git capabilities built into Visual Studio Code. It helps you to visualize code authorship at a glance via Git blame annotations and code lens, seamlessly navigate and explore Git repositories, gain valuable insights via powerful comparison commands, and so much more. |
| Import Cost | Display import/require package size in the editor |
| MDX | Syntax highlighting and language support for MDX |
| Output Colorizer | Syntax highlighting for log files |
| Path Intellisense | Visual Studio Code plugin that autocompletes filenames |
| PHP Docblocker | A simple, dependency free PHP specific DocBlocking package |
| Document This | Automatically generates detailed JSDoc comments in TypeScript and JavaScript files. |
| PHP Intelephense | PHP code intelligence for Visual Studio Code |
| phpcs | PHP CodeSniffer for Visual Studio Code |
| Prettier | Code formatter |
| Tailwind CSS Intellisense | Intelligent Tailwind CSS tooling for VS Code |
| Toggle Quotes | Toggle between single and double quotes with ⌥ + ’ |
PhpStorm
PhpStorm
Looking for contributors…