![]() |
VOOZH | about |
dotnet add package Orion.Irc.Core --version 0.30.1
NuGet\Install-Package Orion.Irc.Core -Version 0.30.1
<PackageReference Include="Orion.Irc.Core" Version="0.30.1" />
<PackageVersion Include="Orion.Irc.Core" Version="0.30.1" />Directory.Packages.props
<PackageReference Include="Orion.Irc.Core" />Project file
paket add Orion.Irc.Core --version 0.30.1
#r "nuget: Orion.Irc.Core, 0.30.1"
#:package Orion.Irc.Core@0.30.1
#addin nuget:?package=Orion.Irc.Core&version=0.30.1Install as a Cake Addin
#tool nuget:?package=Orion.Irc.Core&version=0.30.1Install as a Cake Tool
👁 NuGet Version
👁 License
👁 .NET
IRC protocol implementation for the Orion IRC Server project.
IRC is not dead, long live IRC!
Orion.Irc.Core provides a comprehensive implementation of the IRC protocol for building IRC servers and clients. This library handles parsing, formatting, and validating IRC messages according to RFC standards, offering a clean object-oriented approach to working with the protocol.
dotnet add package Orion.Irc.Core
Or using the Package Manager Console:
Install-Package Orion.Irc.Core
Orion.Irc.Core implements numerous IRC commands including:
using Orion.Irc.Core.Interfaces.Commands;
using Orion.Irc.Core.Interfaces.Parser;
using Orion.Irc.Core.Services;
// Create a parser
IIrcCommandParser parser = new IrcCommandParser(loggerFactory.CreateLogger<IrcCommandParser>());
// Register command handlers
parser.RegisterCommand<JoinCommand>();
parser.RegisterCommand<NickCommand>();
parser.RegisterCommand<UserCommand>();
// Parse a message
string message = ":nick!user@host JOIN #channel";
IIrcCommand command = await parser.ParseAsync(message);
// Cast to specific command type
if (command is JoinCommand joinCommand)
{
Console.WriteLine($"User {joinCommand.Source} joined {joinCommand.Channels[0].ChannelName}");
}
using Orion.Irc.Core.Commands;
using Orion.Irc.Core.Data.Channels;
// Create a JOIN command
var joinCommand = new JoinCommand
{
Channels = new List<JoinChannelData>
{
new JoinChannelData("#orion"),
new JoinChannelData("#testing", "password")
}
};
// Serialize to string
string message = joinCommand.Write();
// Result: "JOIN #orion,#testing password"
// Create a KICK command
var kickCommand = KickCommand.Create("server.name", "#channel", "baduser", "Violated rules");
// Serialize
string kickMessage = kickCommand.Write();
// Result: ":server.name KICK #channel baduser :Violated rules"
using Orion.Irc.Core.Commands.Replies;
// Create a welcome message (RPL_WELCOME - 001)
var welcome = RplWelcome.Create(
"irc.server.name",
"nickname",
"Welcome to the Orion IRC Network, nickname!user@host"
);
// Serialize
string welcomeMessage = welcome.Write();
// Result: ":irc.server.name 001 nickname :Welcome to the Orion IRC Network, nickname!user@host"
Orion.Irc.Core is designed with a clean, modular architecture:
This project is licensed under the MIT License - see the LICENSE file for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 net9.0 is compatible. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 1 NuGet packages that depend on Orion.Irc.Core:
| Package | Downloads |
|---|---|
|
Orion.Core.Server
Server-side core functionality for Orion IRC Server |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.30.1 | 430 | 5/15/2025 |
| 0.30.0 | 320 | 5/13/2025 |
| 0.29.0 | 356 | 5/12/2025 |
| 0.28.4 | 309 | 5/12/2025 |
| 0.28.3 | 324 | 5/12/2025 |
| 0.28.2 | 324 | 5/12/2025 |
| 0.28.1 | 226 | 5/11/2025 |
| 0.28.0 | 187 | 5/10/2025 |
| 0.27.1 | 274 | 5/8/2025 |
| 0.27.0 | 259 | 5/8/2025 |
| 0.26.0 | 236 | 5/8/2025 |
| 0.25.2 | 272 | 5/8/2025 |
| 0.25.1 | 223 | 5/8/2025 |
| 0.25.0 | 251 | 5/8/2025 |
| 0.24.0 | 256 | 5/6/2025 |
| 0.23.0 | 261 | 5/6/2025 |
| 0.22.3 | 242 | 5/6/2025 |
| 0.22.2 | 263 | 5/5/2025 |
| 0.22.0 | 251 | 5/2/2025 |
| 0.21.0 | 222 | 5/2/2025 |