There are countless tools out there so I will only be covering a selection which when combined can be used in either personal projects or in a company. Of course many other project management tools exist out there for example like Jira, confluence, Trello and Asana to name a few. This is based on user experience and preference so feel free to make slight adjustments and personal changes to suit your own tastes.
It is much simpler to concentrate on a refined set of tools instead of getting overwhelmed with the plethora of choices out there which makes it hard for aspiring developers to choose a starting point.
- Notion - For overall project management, documentation, notes and wikis
- Clubhouse / Monday - Clubhouse or Monday to manage the development process itself. Both can be Incorporated into a CI/CD workflow so builds are done automatically and changes are reflected in the staging and production CI/CD branches
- Slack / Discord - For communication between teams
- Figma - Figma is a modern cross platform design tool with sharing and collaboration built in
- Photoshop / Canva - Photoshop is the industry standard for doing graphic design work and Canva is a great image editing tool
- Node.js - A popular modern back-end framework
- PostgreSQL - A popular SQL Database
- MongoDB - A popular NoSQL Database
- HarperDB - A popular hybrid NoSQL/SQL Database
- NextJS / Create React App / Redux - NextJS for generating a static website or Create React App for building a standard React website with Redux for state management
- Tailwind - Tailwind for writing the CSS, as its a modern popular framework basically allowing you to avoid writing your own custom CSS from scratch leading to faster development workflows
- CSS/SASS / styled-components - This can be used as a different option to Tailwind, giving you more customization options for the components in React
- Storybook - This is the main build process for creating the components because it allows for modularity. With Storybook components are created in isolation inside of a dynamic library that can be updated and shared across the business
- Jest and Enzyme, React Testing Library and Cypress - TDD using unit tests for the code and components before they are sent to production and Cypress for end to end testing
- Sanity / Strapi - Sanity and Strapi are headless CMS, and are used to publish the content with the use of a GUI (optional tools)
- Vercel / Netlify / AWS - The CI/CD provider combined with GitHub, it makes it easy to review and promote changes as they're developed
Did you find this article valuable?
Support Andrew Baisden by becoming a sponsor. Any amount is appreciated!