A lightweight, stylish local web server for static files
Project description
softserved
A lightweight, stylish local web server for serving static files from your terminal. Perfect for quick demos, prototyping, and development workflows.
Quick Start
pip install softserved
softserved
Done. Your browser opens at http://localhost:8000 and you're serving.
Why softserved?
Just a static server. No fluff. softserved is a cli-based tool for watching vanilla html/css/js projects.
Features
Clean, minimal CLI — Starts a server in one command
Multiple styling themes — default, dark, and mono options
Live reload — Auto-refresh browser when files change
Lightweight — No bloat, just Python stdlib + colorama
Auto-opens browser — (optional) Opens your default browser automatically
Flexible directory serving — Serve any folder, any port
Installation
From PyPI (recommended)
pip install softserved
For contributors
git clone https://github.com/tolaoyelola/softserved.git
cd softserved
pip install -e .
Verify Installation
softserved --help
Usage
Basic Examples
# Serve current directory on port 8000
softserved
# Serve with custom port and directory
softserved -p 9001 -d ./my-site
# Enable live reload
softserved --reload
# Don't auto-open browser
softserved --no-browser
# Use dark theme for dark terminals
softserved --style dark
# No colors (mono)
softserved --style mono
# Combine options
softserved -p 8080 -d ./portfolio --reload --style dark
Available Options
| Option | Default | Description |
|---|---|---|
-p, --port |
8000 | Port to serve on |
-d, --dir |
. |
Directory to serve |
--no-browser |
false | Don't auto-open browser |
--reload |
false | Enable live reload (requires watchdog) |
--style |
default | Terminal theme: default, dark, or mono |
Requirements
Core dependencies:
- Python 3.6+
colorama— for colored terminal output
Optional dependencies:
watchdog— for live reload functionality
Install all:
pip install -r requirements.txt
How It Works
- Server — Uses Python's built-in
SimpleHTTPRequestHandler - Styling — Colorama handles cross-platform terminal colors
- Live Reload — Watchdog monitors file changes and triggers browser refresh
Troubleshooting
"Port already in use"
softserved -p 8001 # Use a different port
"watchdog not installed"
pip install watchdog
Browser won't open
softserved --no-browser # Disable auto-open
# Then manually navigate to http://localhost:8000
Stop the server
Press Ctrl+C to gracefully shut down
Contributing
Contributions welcome! Feel free to open issues or submit PRs.
License
MIT — See LICENSE file for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file softserved-1.1.5.tar.gz.
File metadata
- Download URL: softserved-1.1.5.tar.gz
- Upload date:
- Size: 6.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e305e8cc587b9eb1bcd8e72870eb9d005925ee584107e34273ee6d8d32ff996
|
|
| MD5 |
e4960ae8df9a11444aabc92920b0afe8
|
|
| BLAKE2b-256 |
9674369e82286bfcd5a0673a37ffffd8d878a5a50f241a79fea3928494531e0e
|
File details
Details for the file softserved-1.1.5-py3-none-any.whl.
File metadata
- Download URL: softserved-1.1.5-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
edf6d20c04f524334f0538add303726d282bb05ea0b4d6656f8e1aef835dba3c
|
|
| MD5 |
beeef7586db173ba7db8bdeb74316daa
|
|
| BLAKE2b-256 |
2e849904a65722398f663e5b872c88d706e4e6afcd46f1a3262a646156f51ab4
|