Merge branch 'master' of github.com:NuSkooler/enigma-bbs

This commit is contained in:
Bryan Ashby
2022-03-27 00:22:07 -06:00
101 changed files with 479 additions and 232 deletions
+75
View File
@@ -0,0 +1,75 @@
name: Build and deploy jekyll site
on:
push:
branches:
- master
# - source
# It is highly recommended that you only run this action on push to a
# specific branch, eg. master or source (if on *.github.io repo)
jobs:
jekyll:
runs-on: ubuntu-latest # can change this to ubuntu-latest if you prefer
steps:
- name: 📂 setup
uses: actions/checkout@v2
# include the lines below if you are using jekyll-last-modified-at
# or if you would otherwise need to fetch the full commit history
# however this may be very slow for large repositories!
# with:
# fetch-depth: '0'
- name: 💎 setup ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7 # can change this to 2.7 or whatever version you prefer
- name: 🔨 install dependencies & build site
uses: limjh16/jekyll-action-ts@v2
with:
enable_cache: true
### Enables caching. Similar to https://github.com/actions/cache.
#
# format_output: true
### Uses prettier https://prettier.io to format jekyll output HTML.
#
# prettier_opts: '{ "useTabs": true }'
### Sets prettier options (in JSON) to format output HTML. For example, output tabs over spaces.
### Possible options are outlined in https://prettier.io/docs/en/options.html
#
# prettier_ignore: 'about/*'
### Ignore paths for prettier to not format those html files.
### Useful if the file is exceptionally large, so formatting it takes a while.
### Also useful if HTML compression is enabled for that file / formatting messes it up.
#
jekyll_src: docs
### If the jekyll website source is not in root, specify the directory. (in this case, sample_site)
### By default, this is not required as the action searches for a _config.yml automatically.
#
gem_src: docs
### By default, this is not required as the action searches for a _config.yml automatically.
### However, if there are multiple Gemfiles, the action may not be able to determine which to use.
### In that case, specify the directory. (in this case, sample_site)
###
### If jekyll_src is set, the action would automatically choose the Gemfile in jekyll_src.
### In that case this input may not be needed as well.
#
# key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
# restore-keys: ${{ runner.os }}-gems-
### In cases where you want to specify the cache key, enable the above 2 inputs
### Follows the format here https://github.com/actions/cache
#
# custom_opts: '--drafts --lsi'
### If you need to specify any Jekyll build options, enable the above input
### Flags accepted can be found here https://jekyllrb.com/docs/configuration/options/#build-command-options
- name: 🚀 deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site
# if the repo you are deploying to is <username>.github.io, uncomment the line below.
# if you are including the line below, make sure your source files are NOT in the master branch:
# publish_branch: master
+6
View File
@@ -0,0 +1,6 @@
# Contributing
## Style
Though you'll see a lot of older style callback code, please utilize modern JavaScript. ES6 classes, arrow functions, and builtins.
There is almost never a reason to use `var`. Prefer `const` where you can and and `let` otherwise.
Save with UNIX line feeds, UTF-8 without BOM, and tabs set to 4 spaces.
+1 -1
View File
@@ -46,7 +46,7 @@ If you feel the urge to donate, [you can do so here](https://liberapay.com/NuSko
## Support
* See [Discussions](https://github.com/NuSkooler/enigma-bbs/discussions) and [the issue tracker](https://github.com/NuSkooler/enigma-bbs/issues)
* **Discussion on a ENiGMA BBS!** (see Boards below)
* IRC: **#enigma-bbs** on **chat.freenode.net** ([webchat](https://webchat.freenode.net/?channels=enigma-bbs))
* IRC: **#enigma-bbs** on **irc.libera.chat:6697(TLS)** ([webchat](https://web.libera.chat/gamja/?channels=#enigma-bbs))
* FSX_ENG on [fsxNet](http://bbs.geek.nz/#fsxNet) or ARK_ENIG on [ArakNet](https://www.araknet.xyz/) available on many fine boards
* Email: bryan -at- l33t.codes
* [Facebook ENiGMA½ group](https://www.facebook.com/groups/enigmabbs/)
+8 -7
View File
@@ -8,10 +8,10 @@ source "https://rubygems.org"
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 3.7.0"
gem "jekyll", "~> 4.2.1"
# This is the default theme for new Jekyll sites. You may change this to anything you like.
gem "hacker"
# gem "hacker"
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
@@ -19,11 +19,12 @@ gem "hacker"
# If you have any plugins, put them here!
group :jekyll_plugins do
gem "jekyll-feed", "~> 0.6"
gem 'jekyll-seo-tag'
gem 'jekyll-theme-hacker'
gem 'jekyll-sitemap'
gem 'jemoji'
gem 'jekyll-seo-tag', '~> 2.7.1'
gem 'jekyll-theme-hacker', '~>0.2.0'
gem 'jekyll-sitemap', '~>1.4.0'
gem 'jemoji', '~>0.12.0'
gem 'jekyll-relative-links', '~>0.6.1'
gem 'jekyll-minifier'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
+89 -74
View File
@@ -1,101 +1,116 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (4.2.9)
i18n (~> 0.7)
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
activesupport (7.0.1)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
colorator (1.1.0)
concurrent-ruby (1.0.5)
em-websocket (0.5.1)
concurrent-ruby (1.1.9)
cssminify2 (2.0.1)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.5)
ffi (1.9.24)
http_parser.rb (~> 0)
eventmachine (1.2.7)
execjs (2.8.1)
ffi (1.15.5)
forwardable-extended (2.6.0)
gemoji (3.0.0)
hacker (0.0.1)
html-pipeline (2.7.1)
gemoji (3.0.1)
html-pipeline (2.14.0)
activesupport (>= 2)
nokogiri (>= 1.8.5)
http_parser.rb (0.6.0)
i18n (0.9.1)
nokogiri (>= 1.4)
htmlcompressor (0.4.0)
http_parser.rb (0.8.0)
i18n (1.9.1)
concurrent-ruby (~> 1.0)
jekyll (3.7.4)
jekyll (4.2.1)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 0.7)
jekyll-sass-converter (~> 1.0)
i18n (~> 1.0)
jekyll-sass-converter (~> 2.0)
jekyll-watch (~> 2.0)
kramdown (~> 1.14)
kramdown (~> 2.3)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (~> 0.3.3)
mercenary (~> 0.4.0)
pathutil (~> 0.9)
rouge (>= 1.7, < 4)
rouge (~> 3.0)
safe_yaml (~> 1.0)
jekyll-feed (0.9.2)
jekyll (~> 3.3)
jekyll-sass-converter (1.5.1)
sass (~> 3.4)
jekyll-seo-tag (2.4.0)
jekyll (~> 3.3)
jekyll-sitemap (1.1.1)
jekyll (~> 3.3)
jekyll-theme-hacker (0.1.0)
jekyll (~> 3.5)
terminal-table (~> 2.0)
jekyll-minifier (0.1.10)
cssminify2 (~> 2.0)
htmlcompressor (~> 0.4)
jekyll (>= 3.5)
json-minify (~> 0.0.3)
uglifier (~> 4.1)
jekyll-relative-links (0.6.1)
jekyll (>= 3.3, < 5.0)
jekyll-sass-converter (2.1.0)
sassc (> 2.0.1, < 3.0)
jekyll-seo-tag (2.7.1)
jekyll (>= 3.8, < 5.0)
jekyll-sitemap (1.4.0)
jekyll (>= 3.7, < 5.0)
jekyll-theme-hacker (0.2.0)
jekyll (> 3.5, < 5.0)
jekyll-seo-tag (~> 2.0)
jekyll-watch (2.0.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
jemoji (0.8.1)
activesupport (~> 4.0, >= 4.2.9)
jemoji (0.12.0)
gemoji (~> 3.0)
html-pipeline (~> 2.2)
jekyll (>= 3.0)
kramdown (1.16.2)
liquid (4.0.0)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
mercenary (0.3.6)
mini_portile2 (2.4.0)
minitest (5.11.1)
nokogiri (1.10.8)
mini_portile2 (~> 2.4.0)
pathutil (0.16.1)
jekyll (>= 3.0, < 5.0)
json (2.6.1)
json-minify (0.0.3)
json (> 0)
kramdown (2.3.1)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.3)
listen (3.7.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
minitest (5.15.0)
nokogiri (1.13.1-x86_64-linux)
racc (~> 1.4)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (3.0.1)
rb-fsevent (0.10.2)
rb-inotify (0.9.10)
ffi (>= 1.9.24, < 2)
rouge (3.1.0)
ruby_dep (1.5.0)
safe_yaml (1.0.4)
sass (3.5.5)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
thread_safe (0.3.6)
tzinfo (1.2.4)
thread_safe (~> 0.1)
public_suffix (4.0.6)
racc (1.6.0)
rb-fsevent (0.11.0)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (3.28.0)
safe_yaml (1.0.5)
sassc (2.4.0)
ffi (~> 1.9)
terminal-table (2.0.0)
unicode-display_width (~> 1.1, >= 1.1.1)
tzinfo (2.0.4)
concurrent-ruby (~> 1.0)
uglifier (4.2.0)
execjs (>= 0.3.0, < 3)
unicode-display_width (1.8.0)
PLATFORMS
ruby
x86_64-linux
DEPENDENCIES
hacker
jekyll (~> 3.7.0)
jekyll-feed (~> 0.6)
jekyll-seo-tag
jekyll-sitemap
jekyll-theme-hacker
jemoji
jekyll (~> 4.2.1)
jekyll-minifier
jekyll-relative-links (~> 0.6.1)
jekyll-seo-tag (~> 2.7.1)
jekyll-sitemap (~> 1.4.0)
jekyll-theme-hacker (~> 0.2.0)
jemoji (~> 0.12.0)
tzinfo-data
BUNDLED WITH
1.16.1
2.3.5
+104 -1
View File
@@ -9,13 +9,17 @@ logo: /assets/images/enigma-logo.png
markdown: kramdown
theme: jekyll-theme-hacker
plugins:
- jekyll-feed
- jekyll-seo-tag
- jekyll-relative-links
- jekyll-sitemap
- jemoji
baseurl: /enigma-bbs
relative_links:
enabled: true
collections: true
# Exclude from processing.
# The following items will not be processed, by default. Create a custom list
# to override the default setting.
@@ -28,3 +32,102 @@ exclude:
- vendor/gems/
- vendor/ruby/
- .idea
# New documents that are not included below under order will display at the
# end of the list. Section names for directories and subdirectories are
# setup in _data/sections.yml. Change there in order to update the name of
# one of the subdirectories or to add a new one.
collections:
docs:
output: true
permalink: /:path:output_ext
order:
- installation/installation-methods.md
- installation/install-script.md
- installation/docker.md
- installation/manual.md
- installation/hardware/rpi.md
- installation/hardware/windows.md
- installation/network.md
- installation/testing.md
- installation/production.md
- configuration/creating-config.md
- configuration/sysop-setup.md
- configuration/config-files.md
- configuration/config-hjson.md
- configuration/hjson.md
- configuration/menu-hjson.md
- configuration/directory-structure.md
- configuration/external-binaries.md
- configuration/archivers.md
- configuration/file-transfer-protocols.md
- configuration/email.md
- configuration/colour-codes.md
- configuration/event-scheduler.md
- configuration/acs.md
- configuration/security.md
- misc/user-interrupt.md
- filebase/index.md
- filebase/first-file-area.md
- filebase/acs.md
- filebase/uploads.md
- filebase/web-access.md
- filebase/tic-support.md
- filebase/network-mounts-and-symlinks.md
- messageareas/configuring-a-message-area.md
- messageareas/message-networks.md
- messageareas/bso-import-export.md
- messageareas/netmail.md
- messageareas/qwk.md
- messageareas/ftn.md
- art/general.md
- art/themes.md
- art/mci.md
- art/views/button_view.md
- art/views/edit_text_view.md
- art/views/full_menu_view.md
- art/views/horizontal_menu_view.md
- art/views/mask_edit_text_view.md
- art/views/multi_line_edit_text_view.md
- art/views/predefined_label_view.md
- art/views/spinner_menu_view.md
- art/views/text_view.md
- art/views/toggle_menu_view.md
- art/views/vertical_menu_view.md
- servers/loginservers/telnet.md
- servers/loginservers/ssh.md
- servers/loginservers/websocket.md
- servers/contentservers/web-server.md
- servers/contentservers/gopher.md
- servers/contentservers/nntp.md
- modding/local-doors.md
- modding/door-servers.md
- modding/telnet-bridge.md
- modding/existing-mods.md
- modding/file-area-list.md
- modding/last-callers.md
- modding/whos-online.md
- modding/user-list.md
- modding/msg-conf-list.md
- modding/msg-area-list.md
- modding/bbs-list.md
- modding/rumorz.md
- modding/file-transfer-protocol-select.md
- modding/onelinerz.md
- modding/show-art.md
- modding/file-base-download-manager.md
- modding/file-base-web-download-manager.md
- modding/set-newscan-date.md
- modding/node-msg.md
- modding/top-x.md
- modding/user-2fa-otp-config.md
- modding/autosig-edit.md
- modding/menu-modules.md
- admin/administration.md
- admin/oputil.md
- admin/updating.md
- troubleshooting/monitoring-logs.md
+28
View File
@@ -0,0 +1,28 @@
installation:
title: Installation
configuration:
title: Configuration
filebase:
title: File Base
messageareas:
title: Message Areas
art:
title: Art
servers:
title: Servers
modding:
title: Modding
admin:
title: Administration
troubleshooting:
title: Troubleshooting
misc:
title: Miscellaneous
views:
title: Views
hardware:
title: OS / Hardware Specific
loginservers:
title: Login Servers
contentservers:
title: Content Servers
@@ -6,17 +6,17 @@ All paths mentioned here are relative to the ENiGMA½ checkout directory.
| Directory | Description |
|---------------------|-----------------------------------------------------------------------------------------------------------|
| `/art/general` | Non-theme art - welcome ANSI, logoff ANSI, etc. See [General Art]({{ site.baseurl }}{% link art/general.md %}).
| `/art/themes` | Theme art. Themes should be in their own subdirectory and contain a theme.hjson. See [Themes]({{ site.baseurl }}{% link art/themes.md %}).
| `/art/general` | Non-theme art - welcome ANSI, logoff ANSI, etc. See [General Art](../art/general.md).
| `/art/themes` | Theme art. Themes should be in their own subdirectory and contain a theme.hjson. See [Themes](../art/themes.md).
| `/config` | [config.hjson](config-hjson.md) system configuration.
| `/config/menus` | [menu.hjson](menu-hjson.md) storage.
| `/config/security` | SSL certificates and public/private keys.
| `/db` | All ENiGMA½ databases in SQLite3 format.
| `/docs` | These docs ;-)
| `/dropfiles` | Dropfiles created for [local doors]({{ site.baseurl }}{% link modding/local-doors.md %})
| `/logs` | Logs. See [Monitoring Logs]({{ site.baseurl }}{% link troubleshooting/monitoring-logs.md %})
| `/dropfiles` | Dropfiles created for [local doors](../modding/local-doors.md)
| `/logs` | Logs. See [Monitoring Logs](../troubleshooting/monitoring-logs.md)
| `/misc` | Stuff with no other home; reset password templates, common password lists, other random bits
| `/mods` | User mods. See [Modding]({{ site.baseurl }}{% link modding/existing-mods.md %})
| `/mods` | User mods. See [Modding](../modding/existing-mods.md)
| `/node_modules` | External libraries required by ENiGMA½, installed when you run `npm install`
| `/util` | Various tools used in running/debugging ENiGMA½
| `/www` | ENiGMA½'s built in webserver root directory
@@ -3,7 +3,7 @@ layout: page
title: Email
---
## Email Support
ENiGMA½ uses email to send password reset information to users. For it to work, you need to provide valid [Nodemailer](https://nodemailer.com/about/) compatible `email` block in your [config.hjson]({{ site.baseurl }}{% link configuration/config-hjson.md %}). Nodemailer supports SMTP in addition to many pre-defined services for ease of use. The `transport` block within `email` must be Nodemailer compatible.
ENiGMA½ uses email to send password reset information to users. For it to work, you need to provide valid [Nodemailer](https://nodemailer.com/about/) compatible `email` block in your [config.hjson](config-hjson.md). Nodemailer supports SMTP in addition to many pre-defined services for ease of use. The `transport` block within `email` must be Nodemailer compatible.
Additional email support will come in the near future.
@@ -11,7 +11,7 @@ prepare a folder where you are going to save your bbs files.
you can perform this step from anywhere - but make sure to consistently run it from the same place to retain your config inside the docker guest
```
docker run -it -p 8888:8888 \
--name " ENiGMABBS" \
--name "ENiGMABBS" \
-v "$(pwd)/config:/enigma-bbs/config" \
-v "$(pwd)/db:/enigma-bbs/db" \
-v "$(pwd)/logs:/enigma-bbs/logs" \
@@ -19,7 +19,7 @@ docker run -it -p 8888:8888 \
-v "$(pwd)/art:/enigma-bbs/art" \
-v "$(pwd)/mods:/enigma-bbs/mods" \
-v "$(pwd)/mail:/mail" \
enigmabbs/enigmabbs:latest
enigmabbs/enigma-bbs:latest
```
- Run it: \
you can use the same command as above, just daemonize and drop interactiveness (we needed it for config but most of the time docker will run in the background)
@@ -33,7 +33,7 @@ docker run -d -p 8888:8888 \
-v "$(pwd)/art:/enigma-bbs/art" \
-v "$(pwd)/mods:/enigma-bbs/mods" \
-v "$(pwd)/mail:/mail" \
enigmabbs/enigmabbs:latest
enigmabbs/enigma-bbs:latest
````
- Restarting and Making changes\
if you make any changes to your host config folder they will persist, and you can just restart ENiGMABBS container to load any changes you've made.
@@ -57,7 +57,7 @@ ENiGMA BBS makes use of a few packages for archive and legacy protocol support.
:information_source: Additional information in [Archivers](../configuration/archivers.md) and [File Transfer Protocols](../configuration/file-transfer-protocols.md)
## Config Files
You'll need a basic configuration to get started. The main system configuration is handled via `config/config.hjson`. This is an [HJSON](http://hjson.org/) file (compliant JSON is also OK). See [Configuration](../configuration/) for more information.
You'll need a basic configuration to get started. The main system configuration is handled via `config/config.hjson`. This is an [HJSON](http://hjson.org/) file (compliant JSON is also OK). See [Configuration](../configuration/hjson.md) for more information.
Use `oputil.js` to generate your **initial** configuration:
@@ -1,6 +1,6 @@
---
layout: page
title: Local Doors
title: Menu Modules
---
## Menu Modules
Menu entries found within `menu.hjson` are backed by *menu modules*.
@@ -1,6 +1,6 @@
---
layout: page
title: TopX
title: 2FA/OTP Config
---
## The 2FA/OTP Config Module
The `user_2fa_otp_config` module provides opt-in, configuration, and viewing of Two-Factor Authentication via One-Time-Password (2FA/OTP) settings. In order to allow users access to 2FA/OTP, the system must be properly configured. See [Security](../configuration/security.md) for more information.
+70
View File
@@ -0,0 +1,70 @@
<ul>
{% for doc in site.docs %}
{% assign pathparts = doc.path | split: '/' %}
{% assign dir = pathparts[1] %}
{% if pathparts.size > 3 %}
{% assign subdir = pathparts[2] %}
{% unless site.data.sections[subdir] %}
{% assign subsection = subdir %}
{% else %}
{% assign subsection = site.data.sections[subdir].title %}
{% endunless %}
{% else %}
{% assign subdir = "NONE" %}
{% endif %}
{% assign section = site.data.sections[dir].title %}
{% unless section %}
{% assign section = dir %}
{% endunless %}
{% if doc.previous %}
{% assign prevpathparts = doc.previous.path | split: '/' %}
{% assign prevdir = prevpathparts[1] %}
{% if prevpathparts.size > 3 %}
{% assign prevsubdir = prevpathparts[2] %}
{% else %}
{% assign prevsubdir = "NONE" %}
{% endif %}
{% else %}
{% assign prevdir = "NONE" %}
{% assign prevsubdir = "NONE" %}
{% endif %}
{% if subdir != prevsubdir and prevsubdir != "NONE" %}
</ul>
{% endif %}
{% if dir != prevdir %}
{% if prevdir != "NONE" %}
</ul>
{% endif %}
<li>{{section}}</li>
<ul>
{% endif %}
{% if subdir != "NONE" and subdir != prevsubdir %}
<li>{{subsection}}</li>
<ul>
{% endif %}
{% if doc.url != page.url %}
<li><a href="{{site.baseurl}}{{doc.url}}">{{doc.title}}</a></li>
{% else %}
<li class="active-nav">{{doc.title}}</li>
{% endif %}
{% unless doc.next %}
</ul>
{% if prevsubdir != "NONE" %}
</ul>
{% endif %}
{% endunless %}
{% endfor %}
</ul>
-109
View File
@@ -1,109 +0,0 @@
- Installation
- [Installation Methods]({{ site.baseurl }}{% link installation/installation-methods.md %})
- [Install script]({{ site.baseurl }}{% link installation/install-script.md %})
- [Docker]({{ site.baseurl }}{% link installation/docker.md %})
- [Manual installation]({{ site.baseurl }}{% link installation/manual.md %})
- [OS / Hardware Specific]({{ site.baseurl }}{% link installation/os-hardware.md %})
- [Raspberry Pi]({{ site.baseurl }}{% link installation/rpi.md %})
- [Windows]({{ site.baseurl }}{% link installation/windows.md %})
- [Your Network Setup]({{ site.baseurl }}{% link installation/network.md %})
- [Testing Your Installation]({{ site.baseurl }}{% link installation/testing.md %})
- [Production Installation]({{ site.baseurl }}{% link installation/production.md %})
- Configuration
- [Creating Config Files]({{ site.baseurl }}{% link configuration/creating-config.md %})
- [SysOp Setup]({{ site.baseurl }}{% link configuration/sysop-setup.md %})
- [Configuration Files]({{ site.baseurl }}{% link configuration/config-files.md %})
- [System Configuration]({{ site.baseurl }}{% link configuration/config-hjson.md %})
- [HJSON Config Files]({{ site.baseurl }}{% link configuration/hjson.md %})
- [Menus]({{ site.baseurl }}{% link configuration/menu-hjson.md %})
- [Directory Structure]({{ site.baseurl }}{% link configuration/directory-structure.md %})
- [External Binaries]({{ site.baseurl }}{% link configuration/external-binaries.md %})
- [Archivers]({{ site.baseurl }}{% link configuration/archivers.md %})
- [File Transfer Protocols]({{ site.baseurl }}{% link configuration/file-transfer-protocols.md %})
- [Email]({{ site.baseurl }}{% link configuration/email.md %})
- [Colour Codes]({{ site.baseurl }}{% link configuration/colour-codes.md %})
- [Access Condition System (ACS)]({{ site.baseurl }}{% link configuration/acs.md %})
- [Event Scheduler]({{ site.baseurl }}{% link configuration/event-scheduler.md %})
- [Security]({{ site.baseurl }}{% link configuration/security.md %})
- File Base
- [About]({{ site.baseurl }}{% link filebase/index.md %})
- [Configuring a File Area]({{ site.baseurl }}{% link filebase/first-file-area.md %})
- [ACS model]({{ site.baseurl }}{% link filebase/acs.md %})
- [Uploads]({{ site.baseurl }}{% link filebase/uploads.md %})
- [Web Access]({{ site.baseurl }}{% link filebase/web-access.md %})
- [TIC Support]({{ site.baseurl }}{% link filebase/tic-support.md %}) (Importing from FTN networks)
- Tips and tricks
- [Network mounts and symlinks]({{ site.baseurl }}{% link filebase/network-mounts-and-symlinks.md %})
- Message Areas
- [Configuring a Message Area]({{ site.baseurl }}{% link messageareas/configuring-a-message-area.md %})
- [Message networks]({{ site.baseurl }}{% link messageareas/message-networks.md %})
- [BSO Import & Export]({{ site.baseurl }}{% link messageareas/bso-import-export.md %})
- [Netmail]({{ site.baseurl }}{% link messageareas/netmail.md %})
- [QWK]({{ site.baseurl }}{% link messageareas/qwk.md %})
- [FTN]({{ site.baseurl }}{% link messageareas/ftn.md %})
- Art
- [General]({{ site.baseurl }}{% link art/general.md %})
- [Themes]({{ site.baseurl }}{% link art/themes.md %})
- [MCI Codes]({{ site.baseurl }}{% link art/mci.md %})
- Views
- [Button]({{ site.baseurl }}{% link art/views/button_view.md %})
- [Edit Text]({{ site.baseurl }}{% link art/views/edit_text_view.md %})
- [Full Menu]({{ site.baseurl }}{% link art/views/full_menu_view.md %})
- [Horizontal Menu]({{ site.baseurl }}{% link art/views/horizontal_menu_view.md %})
- [Mask Edit Text]({{ site.baseurl }}{% link art/views/mask_edit_text_view.md %})
- [Predefined Label]({{ site.baseurl }}{% link art/views/predefined_label_view.md %})
- [Spinner Menu]({{ site.baseurl }}{% link art/views/spinner_menu_view.md %})
- [Text]({{ site.baseurl }}{% link art/views/text_view.md %})
- [Toggle Menu]({{ site.baseurl }}{% link art/views/toggle_menu_view.md %})
- [Vertical Menu]({{ site.baseurl }}{% link art/views/vertical_menu_view.md %})
- Servers
- Login Servers
- [Telnet]({{ site.baseurl }}{% link servers/telnet.md %})
- [SSH]({{ site.baseurl }}{% link servers/ssh.md %})
- [WebSocket]({{ site.baseurl }}{% link servers/websocket.md %})
- Build your own
- Content Servers
- [Web]({{ site.baseurl }}{% link servers/web-server.md %})
- [Gopher]({{ site.baseurl }}{% link servers/gopher.md %})
- [NNTP]({{ site.baseurl }}{% link servers/nntp.md %})
- Modding
- [Local Doors]({{ site.baseurl }}{% link modding/local-doors.md %})
- [Door Servers]({{ site.baseurl }}{% link modding/door-servers.md %})
- DoorParty
- BBSLink
- Combatnet
- Exodus
- [Telnet Bridge]({{ site.baseurl }}{% link modding/telnet-bridge.md %})
- [Existing Mods]({{ site.baseurl }}{% link modding/existing-mods.md %})
- [File Area List]({{ site.baseurl }}{% link modding/file-area-list.md %})
- [Last Callers]({{ site.baseurl }}{% link modding/last-callers.md %})
- [Who's Online]({{ site.baseurl }}{% link modding/whos-online.md %})
- [User List]({{ site.baseurl }}{% link modding/user-list.md %})
- [Message Conference List]({{ site.baseurl }}{% link modding/msg-conf-list.md %})
- [Message Area List]({{ site.baseurl }}{% link modding/msg-area-list.md %})
- [BBS List]({{ site.baseurl }}{% link modding/bbs-list.md %})
- [Rumorz]({{ site.baseurl }}{% link modding/rumorz.md %})
- [File Transfer Protocol Select]({{ site.baseurl }}{% link modding/file-transfer-protocol-select.md %})
- [Onelinerz]({{ site.baseurl }}{% link modding/onelinerz.md %})
- [Show Art]({{ site.baseurl }}{% link modding/show-art.md %})
- [Download Manager]({{ site.baseurl }}{% link modding/file-base-download-manager.md %})
- [Web Download Manager]({{ site.baseurl }}{% link modding/file-base-web-download-manager.md %})
- [Set Newscan Date]({{ site.baseurl }}{% link modding/set-newscan-date.md %})
- [Node to Node Messaging]({{ site.baseurl }}{% link modding/node-msg.md %})
- [Top X]({{ site.baseurl }}{% link modding/top-x.md %})
- [2FA/OTP Config]({{ site.baseurl }}{% link modding/user-2fa-otp-config.md %})
- [Auto Signature Editor]({{ site.baseurl }}{% link modding/autosig-edit.md %})
- Administration
- [Administration]({{ site.baseurl }}{% link admin/administration.md %})
- [oputil]({{ site.baseurl }}{% link admin/oputil.md %})
- [Updating]({{ site.baseurl }}{% link admin/updating.md %})
- Troubleshooting
- [Monitoring Logs]({{ site.baseurl }}{% link troubleshooting/monitoring-logs.md %})
+35 -6
View File
@@ -4,26 +4,55 @@
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" sizes="16x16" href="{{ '/assets/images/favicon-16x16.png' | relative_url }}">
<link rel="icon" type="image/png" sizes="32x32" href="{{ '/assets/images/favicon-32x32.png' | relative_url }}">
<link rel="icon" type="image/png" sizes="32x32" href="{{ '/assets/images/favicon-32x32.png' | relative_url }}">
<link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | append: site.github.build_revision | relative_url }}">
{% seo %}
</head>
<body>
<a href="https://github.com/NuSkooler/enigma-bbs"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/e7bbb0521b397edbd5fe43e7f760759336b5e05f/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677265656e5f3030373230302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png"></a>
{% if page.include-banner %}
<a href="https://github.com/NuSkooler/enigma-bbs/"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/e7bbb0521b397edbd5fe43e7f760759336b5e05f/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677265656e5f3030373230302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png"></a>
{% endif %}
<div id="container">
<div class="sidebar" id="sidebar">
<hr class="mobile-divide" />
<div class="container">
<a href="{{ site.baseurl }}"><img src="{{ '/assets/images/enigma-logo.png' | relative_url }}" class="logo" /></a>
<a href="{% link index.md %}"><img src="{{ '/assets/images/enigma-logo.png' | relative_url }}" class="logo" alt="Enigma logo" /></a>
</div>
{% capture nav_include %}{% include nav.md %}{% endcapture %}
{% capture nav_include %}{% include nav.html %}{% endcapture %}
{{ nav_include | markdownify }}
</div>
<div class="main_area">
<div class="container">
<div class="main_area">
<div class="container">
<section id="main_content">
<div class="PageNavigation">
{% if page.previous %}
<a class="btn" style="float:left;margin-right: 20px;" href="{{page.previous.url | relative_url }}">&laquo; {{page.previous.title}}</a>
{% endif %}
<a href="#sidebar" class="btn menu_button">MENU</a>
{% if page.next %}
<a class="btn" style="float: right;margin-left: 20px" href="{{page.next.url | relative_url }}">{{page.next.title}} &raquo;</a>
{% endif %}
<br clear="both" />
</div>
{{ content }}
<div class="PageNavigation">
{% if page.previous %}
<a class="btn" style="float:left;margin-right: 20px;" href="{{page.previous.url | relative_url }}">&laquo; {{page.previous.title}}</a>
{% endif %}
{% if page.next %}
<a class="btn" style="float: right;margin-left: 20px" href="{{page.next.url | relative_url }}">{{page.next.title}} &raquo;</a>
{% endif %}
<br clear="both" />
</div>
</section>
</div>
</div>
</div>
</div>
{% if site.google_analytics %}
<script type="text/javascript">
+42
View File
@@ -2,3 +2,45 @@
---
@import 'jekyll-theme-hacker';
.active-nav {
font-weight: bolder;
}
@media (max-width: 767px) {
html {
scroll-behavior: smooth;
}
.mobile-divide {
border-top: 1px dashed #b5e853;
}
.sidebar {
order: 2;
float: none;
width: 100%;
position: relative !important;
}
.main_area {
padding-left: 0px !important;
}
#container {
display: flex;
flex-direction: column;
display:flex;
}
}
@media (min-width: 768px) {
.menu_button {
display: none;
}
.mobile-divide {
display: none;
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 885 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

+7 -6
View File
@@ -1,6 +1,7 @@
---
layout: default
title: Home
include-banner: true
---
![ENiGMA½ BBS](assets/images/enigma-bbs.png "ENiGMA½ BBS")
@@ -10,20 +11,20 @@ ENiGMA½ is a modern BBS software with a nostalgic flair!
## Features Available Now
* Multi platform: Anywhere [Node.js](https://nodejs.org/) runs likely works (known to work under Linux, FreeBSD, OpenBSD, OS X and Windows)
* Unlimited multi node support (for all those BBS "callers"!)
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JavaScript based [mods](docs/modding/existing-mods.md)
* [MCI support](docs/art/mci.md) for lightbars, toggles, input areas, and so on plus many other other bells and whistles
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JavaScript based [mods](_docs/modding/existing-mods.md)
* [MCI support](_docs/art/mci.md) for lightbars, toggles, input areas, and so on plus many other other bells and whistles
* Telnet, **SSH**, and both secure and non-secure [WebSocket](https://en.wikipedia.org/wiki/WebSocket) access built in! Additional servers are easy to implement
* [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.
* Full [SAUCE](http://www.acid.org/info/sauce/sauce.htm) support.
* Renegade style [pipe color codes](./configuration/colour-codes.md).
* Renegade style [pipe color codes](_docs/configuration/colour-codes.md).
* [SQLite](http://sqlite.org/) storage of users, message areas, etc.
* Strong [PBKDF2](https://en.wikipedia.org/wiki/PBKDF2) backed password encryption.
* Support for 2-Factor Authentication with One-Time-Passwords
* [Door support](docs/modding/door-servers.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), [DoorParty](http://forums.throwbackbbs.com/), [Exodus](https://oddnetwork.org/exodus/) and [CombatNet](http://combatnet.us/) support!
* [Door support](_docs/modding/door-servers.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), [DoorParty](http://forums.throwbackbbs.com/), [Exodus](https://oddnetwork.org/exodus/) and [CombatNet](http://combatnet.us/) support!
* [Bunyan](https://github.com/trentm/node-bunyan) logging!
* [Message networks](docs/messageareas/message-networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export. Messages Bases can also be exposed via [Gopher](docs/servers/gopher.md), or [NNTP](docs/servers/nntp.md)!
* [Gazelle](https://github.com/WhatCD/Gazelle) inspired File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](docs/servers/web-server.md). Legacy X/Y/Z modem also supported!
* [Message networks](_docs/messageareas/message-networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export. Messages Bases can also be exposed via [Gopher](_docs/servers/contentservers/gopher.md), or [NNTP](_docs/servers/contentservers/nntp.md)!
* [Gazelle](https://github.com/WhatCD/Gazelle) inspired File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](_docs/servers/contentservers/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!
* ANSI support in the Full Screen Editor (FSE), file descriptions, etc.
* A built in achievement system. BBSing gamified!

Some files were not shown because too many files have changed in this diff Show More