New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@mkvlrn/newts

Package Overview
Dependencies
Maintainers
0
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install
Package was removed
Sorry, it seems this package was removed from the registry

@mkvlrn/newts

A very opinionated cli tool for setting up multiple typescript projects

latest
Source
npmnpm
Version
0.1.5
Version published
Maintainers
0
Created
Source

@mkvlrn/newts

This is a very VERY VERY opinionated CLI tool and set of templates for the setup of a few different TypeScript projects with a focus on code quality and consistency from the start.

It attempts to provide a minimalistic setup with modern tools and practices without bloat - but bloat means different things to different people, so your mileage may vary.

usage

Usage is as follows: npx --yes @mkvlrn/newts@latest. The CLI is interactive.

The --yes flag is used to skip the npx confirmation prompt, and the @latest tag is used to ensure you are always getting the latest version of the tool.

the templates

  • node - good starting point for anything node
  • nestjs - nestjs starter done right
  • discord bot - discord bot with discord.js
  • react with vite - pretty much what create-vite does for react, but with biome, vitest, etc.
  • nextjs - what create-next-app does for nextjs, but with biome, vitest, etc; you're seeing a theme here, right?

requirements

  • Node.js 20+ - don't use anything lower than that, node 22 is the current LTS, keep up
  • npm 10+ (npx should be used to run the CLI tool, but you can pick any package manager you want for the project itself)
  • A unix-like shell - if you're on Windows, you should use WSL2 or Git Bash

tools and configurations

Each project will be an ESM (type: module) project with the following tools and configurations:

  • git with a standard .gitignore file
  • biome to lint and format the codebase either on demand or on commit (staged files only) - let eslint and prettier die, and lint-staged is also a casualty I guess
  • vitest as a test runner, because Jest is terrible
  • husky to run the lint-staged commands on pre-commit hooks
  • commitlint to enforce conventional commit messages
  • tsx as a TypeScript dev runner
  • swc as a TypeScript compiler and/or dev runner (for the nest template only)

another cli, huh?

Each available CLI out there brings some opinions and tools that might not be what you want or need, and this one is no different. The main difference is that this one is my opinion, and I'm sharing it with you.

Instead of using create-vite, @nestjs/cli, or create-next-app tools to initialize those projects, this CLI tool will do it from scratch, adding only the tools and configurations that I think are necessary for a good starting point (see above).

NestJs and Next.js have their own way of doing things, and both of them are okay, but I think they can be improved. Also they seem to be very resistant to moving to ESM, and that's a shame.

no huge readme with exhaustive explanations

Just generate a project and see for yourself. If you have any questions, feel free to open an issue or a PR.

The defaults are opinionated, but very sane and easy to adapt to your needs.

Keywords

typescript

FAQs

Package last updated on 14 Feb 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts