# Build and test: tools in this layer of The Stack

> How the code gets written and checked. 8 tools, from Nicolas Dao's defaults to what he would never use (Cloudless Labs, Sydney).

- Web page: https://cloudlesslabs.com/stack/layers/dev/

## My default

- [Claude Code](https://cloudlesslabs.com/stack/claude-code/index.md), AI coding agent: My main tool. I haven't hand-written code in two years.
- [GitHub](https://cloudlesslabs.com/stack/github/index.md), Code hosting: Code, notes and docs. Everything integrates with it first.
- [Node.js (plain JavaScript)](https://cloudlesslabs.com/stack/nodejs-javascript/index.md), Language: My default language. Best fit for the problem wins, but it's usually this.
- [OpenAI Codex](https://cloudlesslabs.com/stack/openai-codex/index.md), Second AI agent: For computer control, images, and as an end-to-end test orchestrator.
- [Playwright, Vitest, pytest](https://cloudlesslabs.com/stack/testing/index.md), Testing: End-to-end and unit tests that agents can run and fix on their own.
- [Stryker mutation testing](https://cloudlesslabs.com/stack/stryker/index.md), Test quality: Tests for your tests. It mutates the code and checks your suite notices.

## Skip

- [TypeScript](https://cloudlesslabs.com/stack/typescript/index.md), Typed JavaScript: I don't use it. Plain JavaScript and strong tests. Instead: Plain JavaScript on Node.js, with strong tests.

## Never

- [GitLab, Bitbucket and Atlassian](https://cloudlesslabs.com/stack/gitlab-bitbucket-atlassian/index.md), Code hosting and team tools: Mediocre. Never recommended. Instead: GitHub, where agents, CI and every integration land first.

## Related

- [Moving on-premises systems to AWS](https://cloudlesslabs.com/stack/use-cases/migration/index.md): a job that picks or avoids tools from this layer
- [Building with AI agents](https://cloudlesslabs.com/stack/use-cases/ai-dev/index.md): a job that picks or avoids tools from this layer
- [Running the business](https://cloudlesslabs.com/stack/use-cases/business/index.md): a job that picks or avoids tools from this layer
- [Every layer, use case and tool in one file](https://cloudlesslabs.com/stack/brief.md)
- [Map of every Markdown file on cloudlesslabs.com, with what each one answers](https://ask.cloudlesslabs.com)
