Commit Graph
260 Commits
Author SHA1 Message Date
HueByte b4c3ebd254 feat: enhance profile editing with avatar support and UI adjustments
- Added AvatarPath to ProfileEditResult for user profile updates.
- Updated ProfileEditDialog to include avatar selection with a browse button.
- Increased dialog height to accommodate new avatar input fields.
- Implemented avatar file path handling in the profile edit dialog.

feat: introduce moderation features and user roles

- Added ServerRole enum to define user roles (Member, Mod, Admin, Owner).
- Extended User model to include role, mute, and ban status.
- Created ModerationController for user role assignment, kicking, banning, and muting.
- Implemented methods in IChatBroadcaster and SignalRBroadcaster for user moderation actions.
- Updated database schema with new columns for user roles and moderation states.

fix: ensure muted users cannot send messages

- Added mute status checks in ChatService to prevent message sending for muted users.
- Updated user presence and status handling to reflect role changes and moderation actions.

chore: update constants for ASCII art rendering

- Introduced AsciiArtHeightHalfBlock constant for improved ASCII art rendering.
2026-02-19 17:47:10 +01:00
HueByte 257ac34224 feat: Add heartbeat handling to ServerDirectoryService for connection health checks 2026-02-19 15:17:19 +01:00
Hue 159a28e890 Merge pull request #5 from HueByte/dev
Dev merge
v0.2.2
2026-02-19 14:52:04 +01:00
HueByte 328821cd14 refactor: Update changelog for v0.2.2 to reflect startup and shutdown fixes, and standardize constructor injection 2026-02-19 14:45:14 +01:00
HueByte 46a30c6b80 refactor: Remove diagnostic logging from IrcGatewayService, Program, and ServerDirectoryService 2026-02-19 14:22:03 +01:00
HueByte 8dfdc163bf refactor: Update IrcGatewayService to use IServiceProvider for dependency resolution
feat: Simplify IChatBroadcaster registration in IrcServiceExtensions
feat: Add diagnostic logging for IRC configuration and environment
2026-02-19 14:09:56 +01:00
HueByte 13297fd017 Refactor classes to use constructor injection for dependencies
- Updated IrcBroadcaster to use constructor injection for IrcGatewayService.
- Refactored JwtTokenService to initialize configuration values in the constructor.
- Modified AuthController to use constructor injection for EchoHubDbContext and JwtTokenService.
- Refactored ChannelsController to utilize constructor injection for dependencies.
- Updated FilesController to use constructor injection for FileStorageService.
- Refactored ServerController to initialize EchoHubDbContext and IConfiguration via constructor.
- Modified UsersController to use constructor injection for EchoHubDbContext and ImageToAsciiService.
- Updated EchoHubDbContext to use constructor for DbContextOptions.
- Refactored ChatHub to use constructor injection for IChatService and ILogger.
- Modified ChatService to utilize constructor injection for dependencies.
- Refactored ServerDirectoryService to use constructor injection for IConfiguration, PresenceTracker, and ILogger.
2026-02-19 14:04:19 +01:00
HueByte 0422066851 refactor: Update SignalRBroadcaster to use IServiceProvider for hub context retrieval 2026-02-19 13:54:42 +01:00
HueByte cf5ef80c08 feat: Enhance diagnostic logging for service resolution during startup 2026-02-19 13:48:26 +01:00
HueByte c8e33c96ce feat: Add diagnostic logging for hosted services resolution and startup timing 2026-02-19 13:37:51 +01:00
HueByte 2a6dbb4461 feat: Add diagnostic hooks and heartbeat logging for application lifecycle events 2026-02-19 13:30:36 +01:00
HueByte caba400f43 Temp diagnostics 2026-02-19 13:22:13 +01:00
HueByte 552fe6afa3 feat: Release v0.2.2 with shutdown improvements and connection handling fixes 2026-02-19 13:01:51 +01:00
Hue 87e8df4ec5 Merge pull request #4 from HueByte/dev
fix: Improve shutdown process for IRC Gateway and Server Directory se…
v0.2.1
2026-02-19 12:31:38 +01:00
HueByte 4c192717de feat: Release v0.2.1 with shutdown and CI fixes 2026-02-19 12:29:45 +01:00
HueByte 1bf32450fd fix: Improve shutdown process for IRC Gateway and Server Directory services 2026-02-19 12:25:33 +01:00
Hue 963c6d3384 Merge pull request #3 from HueByte/dev
Dev merge
v0.1.1
2026-02-19 11:39:54 +01:00
HueByte fbc75ec744 fix: Update CI workflow to trigger only on master branch for push events 2026-02-19 11:38:56 +01:00
HueByte 7bd99be41e feat: Add IRC gateway functionality and update documentation 2026-02-19 11:34:26 +01:00
HueByte cb6b9d1e55 feat: Implement IRC Gateway Service and related functionality
- Add IrcGatewayService to handle IRC connections and commands.
- Create IrcMessage class for parsing IRC protocol lines.
- Implement IrcMessageFormatter for formatting messages as IRC lines.
- Define IrcNumericReply constants for IRC numeric replies.
- Add IrcOptions class for configuration settings related to IRC.
- Create IrcServiceExtensions for adding IRC services to the application.
- Refactor ChannelsController to use IChatService for broadcasting messages and channel updates.
- Update ChatHub to utilize IChatService for user connection and message handling.
- Introduce ChatService to manage chat-related operations and interactions.
- Implement SignalRBroadcaster for broadcasting messages to SignalR clients.
- Update PresenceTracker to retrieve usernames for connections.
- Modify appsettings.example.json to include IRC configuration options.
- Update solution file to include the new IRC project.
2026-02-19 11:31:20 +01:00
Hue 441aa679f6 Merge pull request #2 from HueByte/dev
dev merge
2026-02-19 11:21:12 +01:00
HueByte da7c16d5d0 feat: Add CI and Release workflows for automated markdown linting, formatting checks, and deployment 2026-02-19 11:18:30 +01:00
HueByte defc5873fe fix: Update git log command to reference HEAD for more accurate commit history 2026-02-19 11:03:20 +01:00
HueByte 7952c13c2b feat: Allow PR checks on dev branch and standardize dotnet version formatting 2026-02-19 11:01:11 +01:00
Hue 844313a8c6 Merge pull request #1 from HueByte/dev
feat: Enhance server connection handling with exponential backoff and…
2026-02-19 10:52:05 +01:00
HueByte efc6aa8a02 feat: Update changelog for v0.1.1 release and increment version to 0.1.1 2026-02-19 10:46:45 +01:00
HueByte ff184da095 feat: Enhance server connection handling with exponential backoff and improved reconnection logic 2026-02-19 10:44:00 +01:00
HueByte 9b8c648c8d fix: Remove invisible character from using directive in migration file v0.1.0 2026-02-19 10:18:02 +01:00
HueByte c553705c32 feat: Add format check step to CI workflows for .NET project 2026-02-19 10:12:34 +01:00
HueByte 9975f4e4be Refactor and update various components of EchoHub.Server
- Updated launchSettings.json for consistency.
- Refactored FileValidationHelper to improve image validation logic.
- Enhanced ServerDirectoryService for better connection handling and user count updates.
- Improved DatabaseSetup for legacy database handling and seeding default channels.
- Refined FirstRunSetup to ensure JWT secret generation.
- Removed appsettings.Development.json as it is no longer needed.
- Updated EchoHub.Tests project file for consistency.
- Added unit tests for FileValidationHelper and PresenceTracker with improved assertions.
- Updated ValidationConstantsTests to ensure regex validations are correct.
- Cleaned up solution file formatting for better readability.
2026-02-19 10:12:28 +01:00
HueByte 32e01e8d71 feat: Add .gitattributes to enforce LF line endings for shell scripts 2026-02-19 10:08:39 +01:00
HueByte aea29d3977 feat: Enable manual triggering of CI workflow with workflow_dispatch event 2026-02-19 10:00:01 +01:00
HueByte b0e1ec48af feat: Enable automatic release creation in CI workflow with versioning and artifact publishing 2026-02-19 09:56:58 +01:00
HueByte 16e0b0743d fix: Update API documentation links and remove unnecessary file types from docfx configuration 2026-02-19 09:55:52 +01:00
HueByte ff9c264f4b feat: Add documentation files including Code of Conduct, Contributing guidelines, and Security policy; update Markdown linting configuration and scripts 2026-02-19 09:53:06 +01:00
HueByte 653f25b70b feat: Add issue templates for bug reports and feature requests, and update PR template 2026-02-19 09:52:57 +01:00
HueByte c9f7d86529 feat: Add changelog and update documentation structure with new styles and assets 2026-02-19 09:52:46 +01:00
HueByte ad69420ec8 feat: Add avatar upload functionality and refactor profile handling in AppOrchestrator 2026-02-19 09:11:14 +01:00
HueByte bed6040f7c feat: Implement chat line wrapping and viewport resizing for message display 2026-02-19 09:11:01 +01:00
HueByte 96b31ec568 feat: Manage joined channels in AppOrchestrator and update channel history handling 2026-02-19 08:03:30 +01:00
HueByte eef9059b6a feat: Add documentation build and deployment workflow 2026-02-19 08:03:19 +01:00
HueByte 49240026b0 feat: Enhance CI workflows to check for source and documentation changes, and cache NuGet packages
feat: Embed appsettings.json as a resource and update configuration loading logic
2026-02-19 07:01:22 +01:00
HueByte 1827f25944 fix: Add yield statement to ensure host finishes starting before logging or connecting 2026-02-19 06:25:29 +01:00
HueByte ff0ab068dc feat: Log connection details when PublicServer is enabled 2026-02-19 06:21:40 +01:00
HueByte 15b6443cf0 refactor: Remove PublicPort configuration and update registration logic 2026-02-19 06:18:43 +01:00
HueByte a273ff6bea feat: Implement server directory registration and user count tracking 2026-02-19 06:05:31 +01:00
HueByte b45b4c3139 feat: Enhance chat UI with topic display and command autocomplete functionality 2026-02-19 05:50:24 +01:00
HueByte 0c2a94ef17 fix: Update src change detection logic to handle initial push scenario 2026-02-19 05:41:14 +01:00
HueByte 56ff6197a2 feat: Add initial implementation of CI/CD workflows, documentation, and testing framework 2026-02-19 05:35:05 +01:00
HueByte 3188d18da2 feat: Revamp README.md with detailed project overview and usage instructions 2026-02-19 05:13:48 +01:00