Papercut
Papercut NNTP server
Install / Use
/learn @jpm/PapercutREADME
Papercut NNTP Server
Papercut is a news server written in 100% pure Python. It is intended to be extensible to the point where people can develop their own plug-ins and by that integrate the NNTP protocol to their applications.
The server is compliant with most of the RFC0977 standards (when they make sense and are needed) and implements a lot of RFC1036 and RFC2980 extensions to the NNTP protocol. It was tested against Netscape News, Mozilla News and tin (under Solaris) and it works properly.
The original need for this server was to integrate my PHP related web site forums with an NNTP gateway interface, so people could list and read the messages posted to the forums on their favorite News reader. The software on this case was Phorum (http://phorum.org) and the site is PHPBrasil.com (http://phpbrasil.com). At first it wasn't intended to support message posting, but it made sense to allow it after seeing how effective the tool was.
The concept of storage modules was created exactly for this. I would create a Python class to handle the inner-workins of Phorum and MySQL and if I ever wanted to integrate the server with another type of software, I would just need to write a new storage module class.
Anyway, back to the technical praise. Papercut is multi-threaded on Windows platforms and forking-based on UNIX platforms and should be reasonably fast (that means basically: 'it's pretty fast, but don't try serving 1000 connection at a time). The best thing about the application is that it is very simple to extend it.
Papercut is licensed under the BSD license, which means you can sell it or do whatever you like with it. However, I ask that if you think Papercut is a good tool and you made a few enhancements to it or even fixed some bugs, please send me a patch or something. I will appreciate it :)
-- Joao Prado Maia (jpm@pessoal.org)
Related Skills
node-connect
351.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
