Repeatable setups
A shared configuration describes the environment. Differences in host systems and dependencies still matter.
Local development, simplified.
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
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.
A shared configuration describes the environment. Differences in host systems and dependencies still matter.
Reach your projects through meaningful .localhost domains instead of a collection of different ports.
The local gateway forwards requests to the right services and handles their HTTPS connection.
Share a project on your local network when you need to. Availability also depends on your network.
How it works
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
This file describes your project environment and provides the basis for its setup.
.dwell/dwell.jsonDwell stores generated configurations and runtime data in this project-local directory.
.dwell/runtime/The shared gateway connects local .localhost domains to running project services.
~/.dwell/gateway/When LAN sharing is enabled, routes are also available under .local. This does not expose them to the internet.
Installation · Release Candidate
The RC version is installed from a local repository checkout. It has not yet been published on npm.
$ npm ci && npm pack
$ npm install -g ./websign-dwell-1.0.0-rc.1.tgzTo get started, you need Node.js 20.19.0 or later, npm in your PATH and a running Docker environment.
Your first project
After installation, create a project, build its services and start the local environment.
$ dwell init my-project# Create project$ dwell build# Build services$ dwell up# Start environment