Skip to content

NuSkooler/enigma-bbs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3,559 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ENiGMA½ BBS Software

ENiGMA½ BBS

ENiGMA½ is a modern BBS software with a nostalgic flair!

Features

Below are just some of the features ENiGMA½ supports out of the box:

  • Multi platform — Anywhere modern Node.js runs likely works (known to work under Linux, FreeBSD, OpenBSD, macOS and Windows)
  • Unlimited multi node support
  • Highly customizable via HJSON based configuration, menus, and themes in addition to JavaScript based mods
  • SQLite storage of users, message areas, etc.
  • Strong PBKDF2 backed password encryption.
  • Support for 2-Factor Authentication with One-Time-Passwords
  • Structured Bunyan logging!
  • Telnet, SSH, and both secure and non-secure WebSocket access built in! Additional servers are easy to implement
  • Built-in web server with HTTP(S) support — powers temporary download URLs, file browsing, and more
  • CP437 and UTF-8 output with wide character support — CJK, Hangul, fullwidth forms, and similar scripts display and edit correctly
  • SyncTERM style font support. Display PC/DOS and Amiga style artwork as it should be! In general, ANSI-BBS / cterm.txt / bansi.txt are followed for expected BBS behavior.
  • Baud emulation. View ANSI like the block gods intended.
  • Full SAUCE support.
  • Renegade style pipe color codes.
  • MCI support for lightbars, toggles, input areas, and so on plus many other bells and whistles
  • Message networks with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export, and MRC (Multi-Relay Chat)
  • Internet mail — send and receive email directly from the BBS private message system via IMAP/SMTP. See Internet Mail
  • ActivityPub / Fediverse (experimental) — federated messaging with WebFinger, NodeInfo2, actor profiles, and common ActivityPub object types; PNG avatars with auto-generated defaults
  • Message bases exposed via Gopher and NNTP content servers
  • Gazelle (🪦) inspired File Bases including fast fully indexed full text search (FTS), #tags, and legacy X/Y/Z modem support
  • Upload processor supporting FILE_ID.DIZ and NFO extraction, year estimation, and more!
  • Door support including common dropfile formats for legacy DOS doors. Built in BBSLink, DoorParty, and Exodus!
  • Native x86/DOS door emulation via v86 — run classic DOS BBS doors (LORD, PimpWars, TradeWars, etc.) directly inside ENiGMA½ with zero external dependencies. No QEMU, DOSBox, or DOSEMU required. Includes oputil fat for managing FreeDOS disk images and oputil v86 for an interactive browser-based DOS desktop. See Local Doors — v86.
  • Z-Machine interactive fiction — run Infocom classics (Zork, Colossal Cave, and hundreds more from the IF Archive) natively in Node.js. No external emulator required. Supports Z-Machine versions 3, 4, 5, and 8. See Z-Machine Door.
  • Full Screen Editor (FSE) with ANSI art support, real-time cursor/mode indicators, inline find/search (Ctrl-F), file upload to body, and a fully modernized view engine
  • A remote accessible Waiting For Caller (WFC)!
  • Expandable achievement system — BBSing gamified!

...and much much more. Please check out the issue tracker and feel free to request features (or contribute!) features!

Documentation

Browse the docs online. Be sure to checkout the /docs/ folder as well for the latest and greatest documentation.

Installation

On most *nix systems simply run the following from your terminal:

curl -o- https://raw.githubusercontent.com/NuSkooler/enigma-bbs/master/misc/install.sh | bash

Please see Installation Methods for Windows, Docker, and so on...

Donating

If you feel the urge to donate, you can do so here

Donate using Liberapay

Support

Terminal Clients

ENiGMA has been tested with many terminals. However, the following are suggested for BBSing:

Some Boards

Special Thanks

(in no particular order)

...and so many others! This project would be nothing without the BBS and art scene communities!

Star History Chart

License

Released under BSD 2-clause. See LICENSE.TXT