{"id":42437106,"url":"https://github.com/bengarrett/bbs","last_synced_at":"2026-02-05T03:07:43.058Z","repository":{"id":57640342,"uuid":"433595660","full_name":"bengarrett/bbs","owner":"bengarrett","description":"Package bbs is a Go module that interacts with legacy text files encoded with BBS color codes.","archived":false,"fork":false,"pushed_at":"2025-12-05T21:57:57.000Z","size":126,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-09T11:37:17.919Z","etag":null,"topics":["bbs","celerity","dos","go","html","msdos","pcboard","renegade","telegard","wildcat","wwiv"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bengarrett.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"bengarrett","ko_fi":"codebyben"}},"created_at":"2021-11-30T21:44:53.000Z","updated_at":"2025-12-05T21:57:59.000Z","dependencies_parsed_at":"2024-02-27T03:24:37.443Z","dependency_job_id":"7a476ab3-ddfa-4e54-90dc-d206b6ef986d","html_url":"https://github.com/bengarrett/bbs","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/bengarrett/bbs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bengarrett%2Fbbs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bengarrett%2Fbbs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bengarrett%2Fbbs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bengarrett%2Fbbs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bengarrett","download_url":"https://codeload.github.com/bengarrett/bbs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bengarrett%2Fbbs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29108436,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T02:48:39.389Z","status":"ssl_error","status_checked_at":"2026-02-05T02:48:27.400Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bbs","celerity","dos","go","html","msdos","pcboard","renegade","telegard","wildcat","wwiv"],"created_at":"2026-01-28T05:44:31.963Z","updated_at":"2026-02-05T03:07:43.051Z","avatar_url":"https://github.com/bengarrett.png","language":"Go","funding_links":["https://github.com/sponsors/bengarrett","https://ko-fi.com/codebyben"],"categories":[],"sub_categories":[],"readme":"[![Go Reference](https://pkg.go.dev/badge/github.com/bengarrett/bbs.svg)](https://pkg.go.dev/github.com/bengarrett/bbs) \u0026nbsp; [![Go Report Card](https://goreportcard.com/badge/github.com/bengarrett/bbs)](https://goreportcard.com/report/github.com/bengarrett/bbs)\n![Coverage](https://img.shields.io/badge/Coverage-93.0%25-brightgreen)\n\n# Package bbs\n\nPackage bbs is a [Go module](https://go.dev/) that interacts with legacy textfiles encoded with\n[Bulletin Board Systems]() (BBS) color codes to reconstruct them into HTML documents.\n\nBBSes were popular in the 1980s and 1990s and allowed computer users to chat,\nmessage, and share files over the landline telephone network. The commercialization\nand ease of access to the Internet eventually replaced BBSes, as did the worldwide-web. These centralized systems, termed _boards_, used a text-based interface, and their\nowners often applied colorization, text themes, and art to differentiate themselves.\n\nWhile in the 1990s, [ANSI control codes](https://en.wikipedia.org/wiki/ANSI_escape_code) were in everyday use on the [PC/MS-DOS](https://en.wikipedia.org/wiki/MS-DOS), the\nstandard comes from mainframe equipment. Home microcomputers often had difficulty\ninterpreting it. So, BBS developers created their own, more straightforward methods\nto colorize and theme the text output to solve this.\n\n*Please note that many microcomputer, PC and MS-DOS based boards used ANSI control codes for colorizations that this library does not support.\n\n## Quick usage\n\n[Go Package with docs and examples.](https://pkg.go.dev/github.com/bengarrett/bbs)\n\n```go\n// open the text file\nfile, err := os.Open(\"pcboard.txt\")\nif err != nil {\n    log.Print(err)\n    return\n}\ndefer file.Close()\n\n// transform the MS-DOS text to Unicode\ndecoder := charmap.CodePage437.NewDecoder()\nreader := transform.NewReader(file, decoder)\n\n// create the HTML equivalent of BBS color codes\nvar buf bytes.Buffer\nmatch, err := bbs.HTML(\u0026buf, reader)\nif err != nil {\n    log.Print(err)\n    return\n}\n\n// fetch CSS\nvar css bytes.Buffer\nif err := match.CSS(\u0026css); err != nil {\n    log.Print(err)\n    return\n}\n\n// print the partial html and css\nfmt.Fprintln(os.Stdout, css.String(), \"\\n\", buf.String())\n```\n\n## Known codes\n\n### PCBoard\n\nOne of the most well-known applications for hosting a PC/MS-DOS BBS, PCBoard\npioneered the `file_id.diz` file descriptor, and being endlessly expandable\nthrough software plugins known as PPEs. It developed the popular **@X** color code and\n**@** control syntax.\n\n### Celerity\n\nAnother PC/MS-DOS application was very popular with the hacking, phreaking,\nand pirate communities in the early 1990s. It introduced a unique **|** pipe code\nsyntax in late 1991 that revised the code syntax in version 2 of the software.\n\n### Renegade\n\nA PC/MS-DOS application that was a derivative of the source code of Telegard BBS.\nSurprisingly, there was a new release of this software in 2021. Renegade had two\nmethods to implement color, and this library uses the Pipe Bar Color Codes.\n\n### Telegard\n\nA PC/MS-DOS application became famous due to a source code leak or release by\none of its authors in an era when most developers were still highly\nsecretive with their code. The source is in use in several other BBS applications.\n\n### WWIV\n\nA mainstay in the PC/MS-DOS BBS scene of the 1980s and early 1990s, the software became well-known for releasing its source code to registered users. It allowed owners to expand the code to incorporate additional software, such as games or utilities, and port it to other platforms. The source is now Open Source and is still updated. Confusingly, WWIV has three methods of colorizing text: 10 **|** pipe colors, two-digit pipe colors, and its original **♥** Heart Codes.\n\n### Wildcat\n\nWILDCAT! was a popular, propriety PC/MS-DOS application from the late 1980s that later migrated to Windows. It was one of the few BBS applications sold at retail in a physical box. It extensively used **@** color codes throughout later revisions of the software.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbengarrett%2Fbbs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbengarrett%2Fbbs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbengarrett%2Fbbs/lists"}