Patched

Two critical PHP remote code execution flaws (CVE-2026-109618, CVE-2026-109619) are fixed in PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35. ForgeKit ships them out of the box.

The completePHP dev experiencefor Windows

Run multiple PHP projects, PHP versions, web servers, and databases side by side.
No Docker, WSL, YAML, or global PHP conflicts.

Free. Portable. No account required. Delete the folder to uninstall.

Isolated Environments & Sites

Run legacy PHP, WordPress, Laravel, and modern PHP apps side by side. Each site points to the right local stack, so you do not have to switch global PHP versions.

🔗 prodsite.comlegacy
🔗 companysite.comlegacy
legacy stack
PHP 7.4
Apache
MySQL
🧪 mysite.testmodern
</> laratest.testmodern
🧪 blogsite.testmodern
modern stack
PHP 8.3
Nginx
MariaDB
✓

Run everything side by side

Each site stays attached to its own PHP, web server, and node js, so every project remains available without global switching or conflicts.

Simple and Fast to use

Sites

Add sites in seconds

ForgeKit handles everything for you. Just 20 seconds and your site is up and running. Start developing immediately.

You still have access to configs if you want, but don’t need to.

Quick Sites Guide

Add Site

Tip: Production domains can work but may behave unexpectedly when used locally.

Tip: Choose your project's folder where index.php or index.html are present.

none▾
Node 22.11.0Installed▾

Optional. Lets this site run npm/npx/yarn/pnpm through a managed Node version.

Switch PHP Version

legacy env
Installed PHP Runtimes
Installed
Installed
Custom · local
Installed
User installed
Add More
PHP

Add or switch PHP with 1 click

Run legacy and modern projects side-by-side without touching global configs. Flip versions when you need to test.

Choose your stack (PHP, server, database) from our intuitive interface and start developing immediately.

First Server guide
Databases

Databases integrated

Start and stop database servers, view ports, and jump into phpMyAdmin when you need to inspect data quickly.

Everything is configured and ready to go. Start developing immediately without any setup hassle.

Database Start Guide
modern mysqlEditRemove
mysql
8.4.6
running
3306

No setup rabbit holes

Easy by default. Unlimited power underneath.

ForgeKit handles the setup while keeping every generated config and log file visible and editable.

You fill in three things

The same three fields ForgeKit asks for when you add a site. Change them and watch what gets written on the right.

Served by
Add a Site guide
⚡

ForgeKit writes the rest

Ordinary Apache, Nginx and PHP config, generated for you and editable from the UI. Nothing proprietary, nothing locked away.

# myapp.test
<VirtualHost *:8081>
ServerName myapp.test
DocumentRoot "C:/ForgeKit/sites/myapp"
<Directory "C:/ForgeKit/sites/myapp">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
myapp.test:80 [13/Jul/2026:10:22:41] 200 GET /
myapp.test:80 [13/Jul/2026:10:22:41] 200 GET /assets/app.css
myapp.test:80 [13/Jul/2026:10:22:42] 302 POST /api/login
myapp.test:80 [13/Jul/2026:10:22:43] 200 GET /dashboard
Logs & Config Docs

Catch and debug application mail

Every email your sites send is caught locally instead of going out. Read what your app actually sent, exactly as the recipient would see it.

1 In ForgeKit

✉ mailpit1EditRemove
Mailpit
SMTP catcher
running
smtp 1025http 8025

Run an inbox and connect the web servers you choose.

2 In your browser

localhost:8025
mailpit1 · 2 unreadSearch…

Inbox (4)

🔨 This is a ForgeKit test email!

ForgeKit <forgekit@myfirstsite.test> · Just now

🔨ForgeKit

This is a ForgeKit test email!

PHP's built-in mail() function is correctly wired up to this inbox. No real email ever left your machine.

Visit forgekit.tools

Everything they send lands here instead of a real inbox.

Run more than one inbox and connect only the web servers you choose. PHP's mail() is wired straight through, and anything sending over SMTP just takes the host and port.

Open your local site on your phone

One checkbox gives every site its own address on your network. No DNS to configure and nothing to edit on the phone.

In ForgeKit

LAN access

Other devices can reach you at 192.168.1.42

On your phone

shop.192-168-1-42.sslip.io
Acme Shop
New collectionMade for summer

Simple pieces for warmer days.

⌚Accessories✦New in
Shop now

Served from your Windows machine. Nothing deployed, nothing configured on the phone.

Useful for responsive layouts, touch interactions, real mobile browsers, camera and upload testing, and showing a client something without deploying it.

Everything You Need

The local dev stack essentials, managed from one Windows app.

php

Official versions 5.6 to 8.5

HTTP Servers

ApacheNginx

Databases

MySQLMariaDB

phpMyAdmin included

Composer

v1v2

Both available, per-project

Node.js

npmnpxyarnpnpm

Different Node version per site, same as PHP

Xdebug

Step debuggingVS Code

Set up per PHP version, breakpoints and all

Custom Binaries

PHPNode.jsApacheNginxMySQLMariaDB

Bring any version of any of these, drop it in and it just works

✨ The Cool Stuff
📶
LAN Access

Reach your sites from your phone or a coworker's laptop on the same network. One checkbox, no hosts file editing.

⌂
Custom Localhost App

Replace the default localhost page with your own dashboard: list sites, open folders, launch VS Code.

🔒
Custom Domains & HTTPS

Point a site at any domain, not just .test, complete with trusted local HTTPS.

>_
Smart Terminal

The fkit command auto-detects your project and runs the right PHP/Composer or Node/npm version. No PATH conflicts.

✉
Mailpit

Every email your sites send gets caught locally instead of actually going out. Run more than one inbox, and connect only the web servers you choose.

🗄
Redis & Memcached

Add cache servers for sessions, queues, or caching. Run more than one at once, with an editable redis.conf and no Docker required.

Easy to try. Easy to delete.

Everything ForgeKit installs lives in one folder. Uninstalling means deleting it.

C:\ForgeKit\
bin/PHP, Apache, Nginx, MySQL, MariaDB
instances/your servers and their configs
sites/project mappings
certs/generated SSL certificates
agent/background agent
cli/the fkit command
ForgeKit.yamlconfiguration
ForgeKit.exethe app
~200 MB

ForgeKit's own footprint while running three web servers, a database and seven sites. Runtimes you are not running use nothing.

✓
Runs beside XAMPP, WAMP or Laragon

Your existing setup keeps working. The one thing they cannot share is port 80, so whichever you are using holds it.

✓
No Windows services, nothing installed system-wide

ForgeKit adds one entry to your user PATH so the fkit command works. It never shims php, node or composer, so those keep resolving exactly as they did before.

✓
Your projects never leave your machine

No account, no cloud sync. ForgeKit shares anonymous setup stats by default, never your data, and you can view or switch that off in Preferences.

How ForgeKit stays self-contained

Used by Windows PHP developers

“

I tried every development environment possible… With these changes, ForgeKit has far surpassed even Laragon.

Nicola GranataDeveloper behind saemapiscine.it
“

ForgeKit is lean, intuitive, and hits the sweet spot for developer utility.

CMS developerWindows 10 LTSC user
“

It just works!

CosminSenior software engineer

Get set up in minutes.

Download ForgeKit, create a local server, add a site, and keep your existing Windows setup untouched.

✓ Free for Windows
✓ No Docker or WSL required
✓ Portable and self-contained
Welcome to ForgeKit×

Thanks for using ForgeKit. We're setting things up for you. This will only take a moment.

✓
Downloading PHP 8.4
Installed successfully
✓
Downloading Nginx 1.29.4
Installed successfully
✓
Creating your first web server
Created successfully
✓
All set
ForgeKit is ready.