<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.amigaz.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.amigaz.org/feed.php">
        <title>Amiga-Z Wiki - projects:anetbbs</title>
        <description>“Modern tools for old-school communities.”</description>
        <link>https://wiki.amigaz.org/</link>
        <image rdf:resource="https://wiki.amigaz.org/lib/exe/fetch.php?media=wiki:dokuwiki.svg" />
       <dc:date>2026-04-12T03:55:29+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:architecture&amp;rev=1770741145&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:bbstext&amp;rev=1770741469&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:code_base&amp;rev=1770741576&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:compatibility&amp;rev=1770741372&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:development&amp;rev=1770741162&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:experiments&amp;rev=1771007582&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:notes&amp;rev=1770741208&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:overview&amp;rev=1772482630&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:roadmap&amp;rev=1770741179&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.amigaz.org/lib/exe/fetch.php?media=wiki:dokuwiki.svg">
        <title>Amiga-Z Wiki</title>
        <link>https://wiki.amigaz.org/</link>
        <url>https://wiki.amigaz.org/lib/exe/fetch.php?media=wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:architecture&amp;rev=1770741145&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:32:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>architecture</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:architecture&amp;rev=1770741145&amp;do=diff</link>
        <description>ANet BBS — Architecture

ANet follows a modular, event-driven architecture built on Python’s asyncio framework.

----------

High-Level Design

	*  One asyncio event loop
	*  One coroutine per connected user (node)
	*  No threads
	*  Non-blocking I/O everywhere</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:bbstext&amp;rev=1770741469&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:37:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bbstext</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:bbstext&amp;rev=1770741469&amp;do=diff</link>
        <description>ANet BBS — bbstext.txt Reference

ANet uses a CNet-style text system where interface text is stored in `bbstext.txt` and referenced by line number.

Each line may contain MCI control sequences using the control character:


\x19   (ASCII 25)


----------</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:code_base&amp;rev=1770741576&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:39:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>code_base</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:code_base&amp;rev=1770741576&amp;do=diff</link>
        <description>ANet BBS — Codebase Reference

This page documents the current source layout and future automation goals.

----------

Directory Structure


anet/
 ├── server/
 │    ├── telnet.py
 │    ├── session.py
 │    ├── terminal.py
 │    └── database.py
 ├── sysop/
 │    └── main.py
 ├── data/
 │    ├── bbstext.txt
 │    └── anet.db
 ├── config.py
 └── run_server.py</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:compatibility&amp;rev=1770741372&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:36:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>compatibility</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:compatibility&amp;rev=1770741372&amp;do=diff</link>
        <description>ANet BBS — CNet Compatibility Matrix

This page tracks which CNet Pro features are implemented, planned, or not targeted.
 Feature  Status  Notes  Telnet connections  Implemented  Asyncio telnet listener  Node/session handling  Implemented  Coroutine per caller</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:development&amp;rev=1770741162&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:32:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>development</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:development&amp;rev=1770741162&amp;do=diff</link>
        <description>ANet BBS — Development

Requirements

	*  Linux system
	*  Python 3.13+
	*  No external Python dependencies (Milestone 1)

----------

Running the Server


python3 run_server.py


First run will:

	*  Create `data/anet.db`
	*  Prompt for SysOp password</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:experiments&amp;rev=1771007582&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-13T18:33:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>experiments</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:experiments&amp;rev=1771007582&amp;do=diff</link>
        <description>Some Alternative ideas

Using the built in Linux services and slapping some CNet like UI on them. 

SQLite DB setup to play with:


PRAGMA foreign_keys = ON;

-- =========================
-- ACCESS GROUPS
-- =========================
CREATE TABLE access_groups (
    id INTEGER PRIMARY KEY CHECK(id BETWEEN 0 AND 31),
    name TEXT NOT NULL,
    permissions_mask INTEGER NOT NULL DEFAULT 0,
    daily_time_limit INTEGER DEFAULT 60,        -- minutes
    download_limit INTEGER DEFAULT 100,         --…</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:notes&amp;rev=1770741208&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:33:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>notes</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:notes&amp;rev=1770741208&amp;do=diff</link>
        <description>ANet BBS — Notes

Design Decisions

	*  Telnet chosen for authenticity and simplicity
	*  asyncio over threads for scalability
	*  SQLite for zero-config persistence
	*  PyQt6 for native SysOp experience

Known Quirks

	*  Some CNet behaviors are intentionally preserved</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:overview&amp;rev=1772482630&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-02T20:17:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>overview</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:overview&amp;rev=1772482630&amp;do=diff</link>
        <description>AZNet BBS — Overview

AZNet BBS is a modern reimplementation of CNet Pro, a historically significant BBS platform originally developed for Amiga systems.

The project focuses on:

	*  Authentic behavior
	*  Clean internal architecture
	*  Learning-focused implementation (asyncio)</description>
    </item>
    <item rdf:about="https://wiki.amigaz.org/doku.php?id=projects:anetbbs:roadmap&amp;rev=1770741179&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-10T16:32:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>roadmap</title>
        <link>https://wiki.amigaz.org/doku.php?id=projects:anetbbs:roadmap&amp;rev=1770741179&amp;do=diff</link>
        <description>ANet BBS — Roadmap

Milestone 1 (Completed)

	*  Async telnet server
	*  User login system
	*  SQLite database
	*  ANSI rendering
	*  Basic main menu
	*  CNet-style text handling

Milestone 2

	*  SysOp Control Panel ↔ server IPC
	*  Real-time node display</description>
    </item>
</rdf:RDF>
