jeffcaldwellca

mkcertWeb: Manage Local Development Certificates in a Web UI

mkcertWeb is a self-hosted web interface for generating and managing locally trusted development certificates with mkcert. It suits developers and small teams that want browser-based certificate workflows, device enrollment, and optional authentication or expiry alerts.

Stars
222
Forks
13
Stars, last 16 days
-1

Our take

Health score

42/100

How it is scored
Activity
61
Community
19
Issues
45
Pull requests
44

-1 stars in the last 16 days

Overview

mkcertWeb provides a browser-based way to create and manage locally trusted TLS certificates using the mkcert command-line tool. It brings certificate generation, downloads, and lifecycle monitoring into a self-hosted application rather than requiring users to manage each task directly in a terminal.

It is aimed at developers and teams working on local or internal services, especially when certificates need to cover multiple domains or be enrolled on devices through SCEP. The project also offers optional authentication and OpenID Connect, making it possible to protect access when hosting the interface for a team.

Key Features

  • Generate certificates for domains and IP addresses through a web interface.
  • Download certificates in PEM, CRT, or PFX formats.
  • Manage certificates by viewing, archiving, restoring, or deleting them.
  • Provide SCEP enrollment for compatible devices, with challenge authentication.
  • Monitor certificates for expiry and optionally send email notifications.
  • Protect the application with basic authentication or OpenID Connect SSO.
  • Run as a Dockerized application or install locally with Node.js, mkcert, and OpenSSL.

Use Cases

  • A developer wants to issue trusted certificates for localhost or multiple local development domains without repeatedly using mkcert commands.
  • A small engineering team needs a shared, self-hosted interface for certificate downloads and expiry checks.
  • An administrator wants compatible iOS, macOS, or Windows devices to request certificates through SCEP.
  • A team needs to protect certificate-management access with configured credentials or an OpenID Connect provider.

Getting Started

With Docker Compose:

git clone https://github.com/jeffcaldwellca/mkcertWeb.git
cd mkcertWeb
docker-compose up -d

Then open http://localhost:3000. See the README and Docker setup guide for configuration and deployment details.

Considerations

  • The application depends on mkcert and its locally trusted CA model. It is intended for development and managed environments, not as a replacement for a public certificate authority.
  • Local installation requires Node.js 16+, mkcert, and OpenSSL. Docker is the documented recommended starting point.
  • Authentication is configurable. The README advises using a strong session secret and enabling HTTPS when authentication is enabled, so review deployment settings before exposing the service beyond a trusted network.
  • The project is licensed under GPL-3.0, which may affect use and distribution in some environments.

Found this useful?

Share it with someone who would like mkcertWeb.