Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

mk6i/open-oscar-server

Self-hostable instant messaging server compatible with classic AIM and ICQ clients. (Independently developed, not affiliated with or endorsed by AOL)

mk6i/open-oscar-server.json
{
"createdAt": "2023-06-17T03:16:14Z",
"defaultBranch": "main",
"description": "Self-hostable instant messaging server compatible with classic AIM and ICQ clients. (Independently developed, not affiliated with or endorsed by AOL)",
"fullName": "mk6i/open-oscar-server",
"homepage": "https://discord.gg/E5etJfRAqR",
"language": "Go",
"name": "open-oscar-server",
"pushedAt": "2026-01-07T13:50:53Z",
"stargazersCount": 974,
"topics": [
"chat",
"golang",
"instant-messaging",
"retrocomputing"
],
"updatedAt": "2026-01-04T03:09:34Z",
"url": "https://github.com/mk6i/open-oscar-server"
}

codecov Discord

Open OSCAR Server is an open-source instant messaging server compatible with classic AIM and ICQ clients.

Disclaimer
This project is an independent, open-source initiative and is not affiliated with, endorsed by, or associated with AOL or Yahoo! Inc. This project is entirely non-commercial and does not generate any revenue or accept donations.

The following features are supported:

AIM

  • Windows AIM Clients: [v1.x-v5.x]!(./docs/CLIENT.md), [v6.x-v7.x]!(docs/AIM_6_7.md)
  • Away Messages
  • Buddy Icons (v4.x, v5.x)
  • Buddy List
  • Chat Rooms
  • Public & Private Chat Exchanges
  • Instant Messaging
  • User Profiles
  • Privacy (allow or block specific users)
  • Warning
  • User Directory Search
  • TOC Protocol Clients: Quick Buddy, gaim, [TiK]!(./docs/CLIENT_TIK.md)
  • File Sharing
    • LAN Only: Direct Connect, Get File
    • Lan/Internet: [Send File]!(./docs/RENDEZVOUS.md)

ICQ

  • Windows ICQ Clients: 2000b (more to come soon)
  • Instant Messaging
  • Profiles
  • User Search
  • Presence Statuses
  • Offline Messaging

Get up and running with Open OSCAR Server using one of these handy server quickstart guides:

  • [Linux (x86_64)]!(./docs/LINUX.md)
  • [macOS (Intel and Apple Silicon)]!(./docs/MACOS.md)
  • [Windows 10/11 (x86_64)]!(./docs/WINDOWS.md)

Don’t have AIM installed yet? Check out the [AIM Client Setup Guide]!(./docs/CLIENT.md).

…how about ICQ? Check out the [ICQ Client Setup Guide]!(./docs/CLIENT_ICQ.md).

This project is under active development. Contributions are welcome!

Follow [this guide]!(./docs/BUILD.md) to learn how to compile and run Open OSCAR Server.

The Management API provides functionality for administering the server (see [OpenAPI spec]!(./api.yml)). The following shows you how to run these commands via the command line.

Run these commands from PowerShell, not Command Prompt.

Terminal window
Invoke-WebRequest -Uri http://localhost:8080/user -Method Get
Terminal window
Invoke-WebRequest -Uri http://localhost:8080/user `
-Body '{"screen_name":"MyScreenName", "password":"thepassword"}' `
-Method Post `
-ContentType "application/json"
Terminal window
Invoke-WebRequest -Uri http://localhost:8080/user `
-Body '{"screen_name": "user123"}' `
-Method Delete `
-ContentType "application/json"
Terminal window
Invoke-WebRequest -Uri http://localhost:8080/user/password `
-Body '{"screen_name":"MyScreenName", "password":"thenewpassword"}' `
-Method Put `
-ContentType "application/json"

This request lists sessions for all logged in users.

Terminal window
Invoke-WebRequest -Uri http://localhost:8080/session -Method Get
Terminal window
Invoke-WebRequest -Uri http://localhost:8080/chat/room/public `
-Body '{"name":"Office Hijinks"}' `
-Method Post `
-ContentType "application/json"
Terminal window
Invoke-WebRequest -Uri http://localhost:8080/chat/room/public -Method Get
Terminal window
curl http://localhost:8080/user
Terminal window
curl -d'{"screen_name":"MyScreenName", "password":"thepassword"}' http://localhost:8080/user
Terminal window
curl -d'{"screen_name":"100003", "password":"thepassw"}' http://localhost:8080/user
Terminal window
curl -X DELETE -d '{"screen_name": "user123"}' http://localhost:8080/user
Terminal window
curl -X PUT -d'{"screen_name":"MyScreenName", "password":"thenewpassword"}' http://localhost:8080/user/password

This request lists sessions for all logged in users.

Terminal window
curl http://localhost:8080/session
Terminal window
curl -d'{"name":"Office Hijinks"}' http://localhost:8080/chat/room/public
Terminal window
curl http://localhost:8080/chat/room/public

Open OSCAR Server is licensed under the [MIT license]!(./LICENSE).