nimwc
A website management tool. Run the file and access your webpage.
Summary
| Latest Version | Unknown |
|---|---|
| License | PPL |
| CI Status | Passing |
| Downloads | 0 |
| Last Indexed | 2026-07-21 05:24 |
Tags
Installation
nimble install nimwc
choosenim install nimwc
git clone https://github.com/ThomasTJdev/nim_websitecreator
OS Compatibility
| Platform | Linux | macOS | Windows | FreeBSD | OpenBSD | NetBSD | Android | iOS | WASM | Embedded |
|---|---|---|---|---|---|---|---|---|---|---|
| nimwc | ✓ | ✓ | ✓ | - | - | - | - | - | - | - |
Source
| Repository | https://github.com/ThomasTJdev/nim_websitecreator |
|---|---|
| Homepage | https://nimwc.org/ |
| Registry Source | nimble_official |
README
Nim Website Creator
A quick website tool. Run the nim file and access your webpage. Website: https://nimwc.org

Features
- Blog with custom meta-information and URL's
- Security - 2FA, Firejail, reCAPTCHA
- Fully customizable - log viewer, custom JS & CSS
- Plugins with many features
See more in FEATURES.md
Requirements
To get started you only need:
- Nim >=
1.6.14(tested with +2.0)
Optional dependencies (disabled by default):
- webp (
libwebp) (only required when using WebP) - firejail >=
0.9.58(only required when using Firejail) - Xvfb (
xorg-server-xvfb, required by firejail settingnoX=) - When using Firejail and enabling/disabling a plugin a manual full restart of NimWC is required. It is therefore not advised to enable/disable plugins in the browser when using Firejail.
Install
Install Nim
To compile and install you need Nim. You can easily install Nim using choosenim with:
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
Install NimWC
You only need to perform 1a or 1b or 1c - not both of them.
1a) Install with Nimble
# Install nimwc with nimble
nimble install nimwc
# Edit the config.cfg accordingly
# (change the confg.cfg path to your nimble folder and the correct package version)
nano ~/.nimble/pkgs/nimwc-[PACKAGE-VERSION]/config/config.cfg
# Run nimwc
# (to add an Admin append the arg "newadmin": nimwc --newadmin)
# (to include some standard pages: nimwc --insertdata)
nimwc
# Login
127.0.0.1:7000/login
1b) Compile
# Clone the repository
git clone https://github.com/ThomasTJdev/nim_websitecreator
cd nim_websitecreator
# Generate and edit the config.cfg accordingly
cp config/config_default.cfg config/config.cfg
nano config/config.cfg
# Compile
nimble -d:release build
# Run nimwc
# (to add an Admin append the arg "newadmin": nimwc --newadmin)
# (to include some standard pages: nimwc --insertdata)
./nimwc
# Login
127.0.0.1:7000/login
1c) Curl
This will guide you through the installation.
curl https://raw.githubusercontent.com/ThomasTJdev/nim_websitecreator/master/devops/autoinstall.sh -sSf | sh
# OR
curl https://raw.githubusercontent.com/ThomasTJdev/nim_websitecreator/master/devops/autoinstall.sh -sSfLO && echo "6cc7510305db7b0ae5e3755137e71c23c7e08829264ddfb82702e6cac297f1063b46c48c01eafb16156c27a53aa23d1737c34f354ae1834c8498f5bd64b81b3c autoinstall.sh" | sha512sum -c - && sh ./autoinstall.sh
Use
Arguments
These arguments should be prepended to executable file, e.g. ./nimwc cdata
--showconfig= Show parsed INI configuration and compile options.--newadmin= Add the Admin user.--gitupdate= Updates and force a hard reset.--initplugin= Create plugin skeleton inside tmp/.--vacuumdb= Vacuum database and continue (database maintenance).--backupdb= Compressed full backup of database.--backupdb-gpg= Compressed signed full backup of database.--newdb= Generates the database with standard tables (does not override or delete tables).newdbwill be initialized automatic, if no database exists.--insertdata= Insert standard data, e.g--insertdata bulma(this will override existing data)bulma= Use Bulma CSS, No JS required (official design) [Default official theme]bootstrap= Use Bootstrap and jQuerywater= Water CSS framework, No JS, HTML Classless (No classes on HTML required)
Compile options:
These options are only available at compiletime:
-d:rc= Recompile. NimWC is using a launcher, it is therefore needed to force a recompile.-d:adminnotify= Send error logs (ERROR) to the specified admin email.-d:dev= Development.-d:devemailon= Send email when-d:devis activated.-d:demo= Used on public test site Nim Website Creator. This option will override the database every 1 hour with the standard data.-d:gitupdate= Updates directly from Git and force a hard reset.-d:postgres= Use Postgres database instead of SQLite.-d:packedjson= Use PackedJSON instead of std lib JSON. Performance optimization.
User profiles
There are 3 main user profiles: * User * Moderator * Admin
The access rights below applies to main program. Plugins can have their own definition of user rights.
Blog
You can easily add and edit blogpages. The blogpages support metadata: meta description and meta keywords. It is also possible to specify a category and tags.
website.com/blog?name=nim
website.com/blog?category=article
website.com/blog?tags=code
Plugins
Multiple plugins are available. You can download them within the program at <webpage>/plugins/repo.
The plugin repository are located here: NimWC plugin repository
Shortcuts
When editing a blogpage or a normal page press Ctrl+S to save.
DevOps
Docker, Vagrant, SystemD Service, NGNIX, Admin stuff, etc
**Docker** - [Use the Dockerfile](https://github.com/ThomasTJdev/nim_websitecreator/blob/master/devops/docker/) as starting point for your NimWC containers. - You can run the build_docker.sh and run_docker.sh scripts without changing anything to try out nimwc. **Vagrant** - [Use the Vagrantfile](https://github.com/ThomasTJdev/nim_websitecreator/blob/master/devops/Vagrantfile) as starting point for your NimWC VMs. **NGNIX Config** - [Use the NGNIX Config file](https://github.com/ThomasTJdev/nim_websitecreator/blob/master/devops/config_nginx_default.cfg) as starting point for your NGNIX Server configuration. **Google reCAPTCHA** To activate Google reCAPTCHA [claim you site and server key](https://www.google.com/recaptcha/admin) and insert them into `config.cfg`. **SystemD** - [Use the SystemD Service file](https://github.com/ThomasTJdev/nim_websitecreator/blob/master/devops/nimwc.service) as starting point for your NimWC SystemD Services. Copy the file `nimwc.service` into `/lib/systemd/system/`sudo nano /lib/systemd/system/nimwc.service
sudo systemctl enable nimwc
sudo systemctl start nimwc
sudo systemctl status nimwc
How to Firejail
Optional dependency.
# Arch (package manager)
sudo pacman -S firejail
# Ubuntu (built files)
https://launchpad.net/ubuntu/+source/firejail/0.9.58-1 # <-- download
sudo apt install ./firejail_0.9.58-1_arm64.deb
# Compile
git clone https://github.com/netblue30/firejail.git
cd firejail
./configure && make && sudo make install-strip
Resources
- NimWC Logo, high quality, PNG.
- NimWC Presentation Slides, HTML5 3D, English.
- NimWC Presentation Slides, HTML5 3D, Spanish.
- NimWC Telegram Stickers on the Nim Pack.
