Skip to content

bjerkio/create-bjerk-typescript

Repository files navigation

Bjerk's Typescript boilerplate

This repository contains a basic Typescript boilerplate, based on Bjerk's typical setup.

yarn create bjerk-typescript my-app

Check the package.json for more details.

See our video about it here: https://www.youtube.com/watch?v=0x82COtqsag

Features

  • GitHub Workflow that build, test, lint and format
  • Uses Yarn v2
  • Pure ESM
  • Standardized (and optimized) Dockerfile
  • Standardized on Node LTS
  • Kept (very) maintained

Motivation

There are thousands of boilerplates on GitHub, and being a company that both contributes and loves Open Source it makes sense to use them. However, we haven't found a boilerplate that follows the guidelines below.

1. Keep it barebone, but enough to provide value

The required tools should come with the boilerplate. An example is Fastify, even though we use Fastify for most of our projects, we don't use Fastify for all the applications. This boilerplate should be barebone for 95% of our projects.

Another example is Jest; Node 18 includes a test runner – do we need it anymore? We should keep asking ourselves that question to make the best boilerplate.

2. Continuous attention to technical excellence

Having a great starting point is paramount. Our boilerplate should strive to always improve technical excellence/quality.

3. Keep it up-to-date

Things change in the software industry very quickly. Our boilerplate should always be kept maintained. We want to start from the most up-to-date point, it feels weird to start updating packages when you start from a boilerplate.

A boilerplate to be inspired by

We strive to make this boilerplate a single source of truth for code that is up-to-date and of upmost technical excellence.

Contribute

We love contributions! If you have some questions about how things work, a feature or just wanna share feedback, feel free to open an issue! If you're thinking about adding a Pull Request and afraid it wouldn't be landed? Feel free to talk about it first :)