Local development, simplified.

What is Dwell?

Dwell is an npm-based command-line tool for local web project environments. It organizes Docker services, local domains and an HTTPS gateway through a shared project configuration.

The idea

A shared foundation for local development.

Instead of setting up infrastructure separately for every project, you describe it in a configuration. This makes setups easier to understand and repeat – including across a team.

Repeatable setups

A shared configuration describes the environment. Differences in host systems and dependencies still matter.

Local domains

Reach your projects through meaningful .localhost domains instead of a collection of different ports.

Central routing

The local gateway forwards requests to the right services and handles their HTTPS connection.

Optional LAN access

Share a project on your local network when you need to. Availability also depends on your network.

How it works

Dwell as a central layer.

You control Dwell through the command line. Dwell starts Docker services, manages local domains and sets up the HTTPS gateway. Your application and its dependencies remain part of your project.

Key concepts

Project configuration

This file describes your project environment and provides the basis for its setup.

.dwell/dwell.json

Project runtime

Dwell stores generated configurations and runtime data in this project-local directory.

.dwell/runtime/

Global gateway

The shared gateway connects local .localhost domains to running project services.

~/.dwell/gateway/

Optional LAN access

When LAN sharing is enabled, routes are also available under .local. This does not expose them to the internet.

Installation · Release Candidate

Install from the repository.

The RC version is installed from a local repository checkout. It has not yet been published on npm.

Installation (from the repository)bash
$ npm ci && npm pack
$ npm install -g ./websign-dwell-1.0.0-rc.1.tgz

To get started, you need Node.js 20.19.0 or later, npm in your PATH and a running Docker environment.

Your first project

Create, build, start.

After installation, create a project, build its services and start the local environment.

First projectbash
  1. $ dwell init my-project# Create project
  2. $ dwell build# Build services
  3. $ dwell up# Start environment