rust-rcon-web Svelte Themes

Rust Rcon Web

A fast, modern web console for Rust game server administration via RCon.

Rust RCon Web

A modern, reliable, and feature-rich web interface for your Rust game server's RCon.


Check out the live version: rust-rcon-web.evs-ptr.workers.dev

Features

  • Real-Time Console & Chat: A color-coded console and a dedicated, clean in-game chat view. No more cluttered logs.
  • Effortless Server Management: Save, manage, and instantly switch between multiple server configurations. Your settings are persisted locally and even synced across browser tabs.
  • Intelligent Console UI: Includes essential features like command history (use arrow keys!), smart auto-scrolling that doesn't interrupt you, and a responsive design for any device.
  • Secure & Private: Credentials are never stored unless you explicitly choose to save them in your browser's local storage. Supports secure wss:// connections out of the box.
  • Open Source: Built with a modern, transparent, and open-source stack.

Why?

This project was built to provide a modern, fast, and enjoyable RCon experience. While other tools exist, Rust RCon Web focuses on:

  • Modern Technology: Built with Svelte 5, Vite, and TypeScript for a blazing-fast and reactive UI.
  • User Experience: From smart scrolling to command history, every feature is designed with the server administrator's workflow in mind.
  • Simplicity: A clean, intuitive interface that's easy to use from the start.

Getting Started

Prerequisites

Installation & Running

  1. Clone the repository:

    git clone https://github.com/evs-ptr/rust-rcon-web.git
    cd rust-rcon-web
    
  2. Install dependencies:

    # With Bun
    bun install
    
    # Or with npm
    npm install
    
  3. Run the development server:

    # With Bun
    bun run dev
    
    # Or with npm
    npm run dev
    

The application will be available at http://localhost:5173.

Testing

This project uses Vitest for unit testing.

  • Run all tests:

    bun run test
    
  • Run tests in watch mode:

    bun run test:unit
    

Project Structure

.
├── src
│   ├── lib
│   │   ├── config-state.svelte.ts  # Global UI state management (Svelte 5 Runes)
│   │   ├── storage-synced.ts       # localStorage persistence & cross-tab sync
│   │   └── components/ui/          # Reusable Shadcn UI components
│   ├── routes
│   │   ├── +page.svelte            # The main landing page
│   │   └── rcon/                   # Core RCON application logic and components
│   │       ├── +page.svelte        # Entry point for the /rcon route
│   │       ├── rust-rcon.ts        # Handles RCON message protocol
│   │       ├── websocket-wrapper.ts# Manages the WebSocket connection & reconnects
│   │       ├── servers-manager.svelte.ts # Manages adding, deleting, and switching servers
│   │       ├── ServerMain.svelte   # Main component for a connected server
│   │       ├── ServerConsole.svelte# The interactive console component
│   │       └── ServerChat.svelte   # The interactive chat component
│   └── tests/                      # Vitest unit tests
├── static/                         # Static assets (images, favicon)
└── package.json                    # Project dependencies and scripts

Similar Projects

Technologies Used

Contributing

Contributions are welcome.

License

Distributed under the MIT License.

Top categories

Loading Svelte Themes