More document updates
This commit is contained in:
parent
2d9cd39ae8
commit
2e7862043d
|
@ -20,9 +20,9 @@ ENiGMA½ is a modern BBS software with a nostalgic flair!
|
||||||
* [Door support](docs/doors.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), and [DoorParty](http://forums.throwbackbbs.com/) support!
|
* [Door support](docs/doors.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), and [DoorParty](http://forums.throwbackbbs.com/) support!
|
||||||
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
||||||
* [Message networks](docs/msg_networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export
|
* [Message networks](docs/msg_networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export
|
||||||
* [Gazelle](https://github.com/WhatCD/Gazelle) inspirted File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs. Legacy X/Y/Z modem also supported!
|
* [Gazelle](https://github.com/WhatCD/Gazelle) inspirted File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](docs/web_server.md). Legacy X/Y/Z modem also supported!
|
||||||
* Upload processor supporting [FILE_ID.DIZ](https://en.wikipedia.org/wiki/FILE_ID.DIZ) and [NFO](https://en.wikipedia.org/wiki/.nfo) extraction, year estimation, and more!
|
* Upload processor supporting [FILE_ID.DIZ](https://en.wikipedia.org/wiki/FILE_ID.DIZ) and [NFO](https://en.wikipedia.org/wiki/.nfo) extraction, year estimation, and more!
|
||||||
|
|
||||||
## In the Works
|
## In the Works
|
||||||
* More ES6+ usage, and **documentation**!
|
* More ES6+ usage, and **documentation**!
|
||||||
* More ACS support coverage
|
* More ACS support coverage
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
# About ENiGMA½
|
# About ENiGMA½
|
||||||
|
|
||||||
## High Level Feature Overview
|
## High Level Feature Overview
|
||||||
* Multi platform: Anywhere Node.js runs likely works (tested under Linux and OS X)
|
* Multi platform: Anywhere [Node.js](https://nodejs.org/) runs likely works (known to work under Linux, FreeBSD, OpenBSD, OS X and Windows)
|
||||||
* Multi node support
|
* Unlimited multi node support (for all those BBS "callers"!)
|
||||||
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JS based mods
|
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JavaScript based mods
|
||||||
* MCI support for lightbars, toggles, input areas, and so on plus many other other bells and whistles
|
* MCI support for lightbars, toggles, input areas, and so on plus many other other bells and whistles
|
||||||
* Telnet & SSH access built in. Additional servers are easy to implement & plug in
|
* Telnet & **SSH** access built in. Additional servers are easy to implement
|
||||||
* [CP437](http://www.ascii-codes.com/) and UTF-8 output
|
* [CP437](http://www.ascii-codes.com/) and UTF-8 output
|
||||||
* [SyncTerm](http://syncterm.bbsdev.net/) style font and baud emulation support. Display PC/DOS and Amiga style artwork as it's intended! In general, ANSI-BBS / [cterm.txt](http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt?content-type=text%2Fplain&revision=HEAD) / [bansi.txt](http://www.bbsdocumentary.com/library/PROGRAMS/GRAPHICS/ANSI/bansi.txt) are followed for expected BBS behavior.
|
* [SyncTerm](http://syncterm.bbsdev.net/) style font and baud emulation support. Display PC/DOS and Amiga style artwork as it's intended! In general, ANSI-BBS / [cterm.txt](http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt?content-type=text%2Fplain&revision=HEAD) / [bansi.txt](http://www.bbsdocumentary.com/library/PROGRAMS/GRAPHICS/ANSI/bansi.txt) are followed for expected BBS behavior
|
||||||
* [SAUCE](http://www.acid.org/info/sauce/sauce.htm) support
|
* [SAUCE](http://www.acid.org/info/sauce/sauce.htm) support
|
||||||
* Renegade style pipe codes
|
* Renegade style pipe color codes
|
||||||
* [SQLite](http://sqlite.org/) storage of users and message areas
|
* [SQLite](http://sqlite.org/) storage of users, message areas, and so on
|
||||||
* Strong [PBKDF2](https://en.wikipedia.org/wiki/PBKDF2) backed password storage
|
* Strong [PBKDF2](https://en.wikipedia.org/wiki/PBKDF2) backed password encryption
|
||||||
* Door support including common dropfile formats and [DOSEMU](http://www.dosemu.org/)
|
* [Door support](doors.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), and [DoorParty](http://forums.throwbackbbs.com/) support!
|
||||||
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
||||||
|
* [Message networks](msg_networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export
|
||||||
|
* [Gazelle](https://github.com/WhatCD/Gazelle) inspirted File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](web_server.md). Legacy X/Y/Z modem also supported!
|
||||||
|
* Upload processor supporting [FILE_ID.DIZ](https://en.wikipedia.org/wiki/FILE_ID.DIZ) and [NFO](https://en.wikipedia.org/wiki/.nfo) extraction, year estimation, and more!
|
|
@ -1,10 +1,10 @@
|
||||||
# Configuration
|
# Configuration
|
||||||
Configuration files in ENiGMA½ are simple UTF-8 encoded [HJSON](http://hjson.org/) files. HJSON is just like JSON but simplified and much more resilient to human error.
|
Configuration files in ENiGMA½ are simple UTF-8 encoded [HJSON](http://hjson.org/) files. HJSON is just like JSON but simplified and much more resilient to human error.
|
||||||
|
|
||||||
## System Configuraiton
|
## System Configuration
|
||||||
The main system configuration file, `config.hjson` both overrides defaults and provides additional configuration such as message areas. The default path is `~/.config/enigma-bbs/config.hjson` though you can override this with the `--config` parameter when invoking `main.js`. Values found in core/config.js may be overridden by simply providing the object members you wish replace.
|
The main system configuration file, `config.hjson` both overrides defaults and provides additional configuration such as message areas. The default path is `~/.config/enigma-bbs/config.hjson` though you can override this with the `--config` parameter when invoking `main.js`. Values found in core/config.js may be overridden by simply providing the object members you wish replace.
|
||||||
|
|
||||||
**Windows note**: **~** resolves to *C:\Users\YOURLOGINNAME\* on modern installations, e.g. *C:\Users\NuSkooler\\.config\enigma-bbs\config.hjson*
|
**Windows note**: **~** resolves to *C:\Users\YOURLOGINNAME\* on modern Windows installations, e.g. `C:\Users\NuSkooler\\.config\enigma-bbs\config.hjson`
|
||||||
|
|
||||||
### oputil.js
|
### oputil.js
|
||||||
Please see `oputil.js config` for configuration generation options.
|
Please see `oputil.js config` for configuration generation options.
|
||||||
|
@ -24,13 +24,18 @@ general: {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
(Note the very slightly different syntax. **You can use standard JSON if you wish**)
|
||||||
|
|
||||||
### Specific Areas of Interest
|
### Specific Areas of Interest
|
||||||
* [Doors](doors.md)
|
|
||||||
* [MCI Codes](mci.md)
|
|
||||||
* [Menu System](menu_system.md)
|
* [Menu System](menu_system.md)
|
||||||
* [Message Conferences](msg_conf_area.md)
|
* [Message Conferences](msg_conf_area.md)
|
||||||
* [Message Networks](msg_networks.md)
|
* [Message Networks](msg_networks.md)
|
||||||
|
* [File Base](file_base.md)
|
||||||
* [File Archives & Archivers](archives.md)
|
* [File Archives & Archivers](archives.md)
|
||||||
|
* [Doors](doors.md)
|
||||||
|
* [MCI Codes](mci.md)
|
||||||
|
* [Web Server](web_server.md)
|
||||||
|
...and other stuff [in the /docs directory](./)
|
||||||
|
|
||||||
|
|
||||||
### A Sample Configuration
|
### A Sample Configuration
|
||||||
|
@ -121,4 +126,4 @@ Below is a **sample** `config.hjson` illustrating various (but certainly not all
|
||||||
```
|
```
|
||||||
|
|
||||||
## Menus
|
## Menus
|
||||||
TODO: Documentation on menu.hjson, etc.
|
See [the menu system docs](menu_system.md)
|
|
@ -1,13 +1,14 @@
|
||||||
# Menu System
|
# Menu System
|
||||||
ENiGMA½'s menu system is highly flexible and moddable. The possibilities are almost endless! By modifying your `menu.hjson` you will be able to create a custom look and feel unique to your board.
|
ENiGMA½'s menu system is highly flexible and moddable. The possibilities are almost endless! By modifying your `menu.hjson` you will be able to create a custom look and feel unique to your board.
|
||||||
|
|
||||||
The default `menu.hjson` file lives within the `mods` directory. To specify another file, set the `menuFile` property in your `config.hjson` file:
|
The default `menu.hjson` file lives within the `mods` directory. It is **highly recommended** to specify another file by setting the `menuFile` property in your `config.hjson` file:
|
||||||
```hjson
|
```hjson
|
||||||
general: {
|
general: {
|
||||||
/* Can also specify a full path */
|
/* Can also specify a full path */
|
||||||
menuFile: mybbs.hjson
|
menuFile: mybbs.hjson
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
(You can start by copying the default `menu.hjson` to `mybbs.hjson`)
|
||||||
|
|
||||||
## The Basics
|
## The Basics
|
||||||
Like all configuration within ENiGMA½, menu configuration is done via a HJSON file. This file is located in the `mods` directory: `mods/menu.hjson`.
|
Like all configuration within ENiGMA½, menu configuration is done via a HJSON file. This file is located in the `mods` directory: `mods/menu.hjson`.
|
||||||
|
@ -37,6 +38,7 @@ Now let's look at `matrix`, the `next` entry from `telnetConnected`:
|
||||||
```hjson
|
```hjson
|
||||||
matrix: {
|
matrix: {
|
||||||
art: matrix
|
art: matrix
|
||||||
|
desc: Login Matrix
|
||||||
form: {
|
form: {
|
||||||
0: {
|
0: {
|
||||||
VM: {
|
VM: {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# Web Server
|
# Web Server
|
||||||
ENiGMA½ comes with a built in *content server* for supporting both HTTP and HTTPS. Currently the [File Bases](file_base.md) registeres routes for file downloads, and static files can also be served for your BBS. Other features will likely come in the future or you can easily write your own!
|
ENiGMA½ comes with a built in *content server* for supporting both HTTP and HTTPS. Currently the [File Bases](file_base.md) registers routes for file downloads, and static files can also be served for your BBS. Other features will likely come in the future or you can easily write your own!
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
By default the web server is not enabled. To enable it, you will need to at a minimum configure two keys in the `contentServers::web` section of `config.hjson`:
|
By default the web server is not enabled. To enable it, you will need to at a minimum configure two keys in the `contentServers::web` section of `config.hjson`:
|
||||||
|
|
Loading…
Reference in New Issue