Please note any tools I recommend here are based on my personal experience using them, also I only recommend them if I think they are worthwhile, I don't get paid for any of the links below
A quick summary of the tools and setup I'll be using to build this project
To get the project started, I've created a Waffle.io board with the following columns:
- Disco - this is where the user story will have acceptance criteria defined for me to use as a checklist to ensure all functionality has been built.
- Design/UX - in this step any wireframes and mockups will be created and attached to the GitHub ticket for a central source of truth.
- Dev - exactly what it says on the tin, dev work will be done here, this will include writing tests, code and building the functionality. This will also include a test phase within the process.
- Done - the code is written, coverage calculated and the feature is deployed to the 'production' environment.
For branching, I'll be using the GitFlow workflow to enable me to keep functionality modular and compact. It'll also allow me to deploy small and often instead of doing big bang deployments which can have a lot of problems around them when it comes time to push releases out.
Locally I'll be using prettier to maintain code style and linting, it'll also help any new contributors to the project as there won't be a need for them to worry about code style.
I will also use WebStorm as my IDE, I've been using it for the last 3-4 months and really get on with it as an editor/IDE, the extra functionality it brings like VCS integration and code completion should really speed up development.
Sketch will be my UX/UI tool of choice, it works better than Photoshop on Macs, it's easier to work with and simpler to manage a project.
To handle CI/CD, I'll be using TravisCI. Again I've worked with it in the past, I really like the level of customizability you can get with the build process and how much you can choose around environments and build tools.
I also want to use this project as an opportunity to break into using Docker. Docker is looking to really change up the DevOps world over the next couple of years, and I'd really like to be ahead of the curve with the tech.
To ensure good coverage of the code with unit tests, I'll use codecov.io, this should make sure that any code that is written is tested well before being released, it should also allow me to confidently make changes and refactor the code without any worries about breaking existing functionality.
So that outlines the setup I'll be using, next to cover will be breaking down the requirements into user stories and designing the landing page which will be put up to provide a way to subscribe to marketing updates.
Header Photo by Mikael Kristenson on Unsplash
Subscribe to Chris Gray
Get the latest posts delivered right to your inbox