Rust RCon Web

A fast, reliable, and feature-rich web-based remote console (RCon) for Rust servers. Built with modern technologies to provide a seamless experience for server administrators.

Live Demo

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

Features

  • Live Console: Real-time log streaming with color-coded message types.
  • Command History: Easily navigate and re-execute previous commands.
  • Multi-Server Management: Save and switch between multiple Rust servers effortlessly.
  • Resilient Reconnect: Automatic reconnection with exponential back-off ensures you stay connected.
  • Secure by Default: Supports secure WebSocket (wss://) connections and never stores credentials in plain text.
  • Open-Source: MIT licensed and built with a modern, open-source stack.

Technologies Used

Getting Started

Follow these instructions to get a local copy up and running for development and testing purposes.

Prerequisites

This project recommends using Bun for its speed, but it is not required. You can use Node.js with npm as well.

  • Recommended: Bun
  • Alternative: Node.js (v20 or higher)

Installation

  1. Clone the repository:

    git clone https://github.com/evs-ptr/rust-rcon-web
    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.

Building for Production

To create a production version of the app:

# With Bun
bun run build

# Or with npm
npm run build

You can preview the production build with bun run preview or npm run preview.

Testing

This project uses Vitest for unit testing.

  • Run all tests:

    # With Bun
    bun run test
    
    # Or with npm
    npm run test
    
  • Run tests in watch mode:

    # With Bun
    bun run test:unit
    
    # Or with npm
    npm run test:unit
    

Test files are located in the src/tests directory.

Project Structure

.
├── src
│   ├── lib
│   │   ├── components/ui  # Reusable UI components from shadcn-svelte
│   │   └── utils.ts       # Utility functions
│   ├── routes
│   │   ├── +page.svelte   # Landing page
│   │   └── rcon           # RCon interface, logic, and components
│   └── tests              # Unit tests
├── static                 # Static assets (e.g., favicon)
└── package.json           # Project dependencies and scripts

Similar Projects

Here are a few other web-based RCon tools for Rust:

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

License

Distributed under the MIT License.

Top categories

svelte logo

Need a Svelte website built?

Hire a professional Svelte developer today.
Loading Svelte Themes