Convert Figma logo to code with AI

juewuy logoShellCrash

Run sing-box/mihomo as client in shell

8,428
1,415
8,428
10

Top Related Projects

16,571

A Clash Client For OpenWrt

15,239

A simple Python Pydantic model for Honkai: Star Rail parsed data from the Mihomo API.

4,027

Yet Another Clash Dashboard

Quick Overview

ShellCrash is a lightweight and easy-to-use Clash client for OpenWrt, Merlin, and other Linux systems. It provides a web-based interface for managing Clash configurations and proxies, making it accessible for users who prefer a graphical interface over command-line tools.

Pros

  • Simple installation process with a one-click script
  • Web-based interface for easy management of Clash configurations
  • Supports various Linux systems, including OpenWrt and Merlin
  • Regular updates and active community support

Cons

  • Limited documentation, especially for advanced configurations
  • May require some technical knowledge to troubleshoot issues
  • Potential security risks if not properly configured
  • Performance may vary depending on the hardware and network conditions

Getting Started

To install ShellCrash, run the following command in your terminal:

wget -O /tmp/install.sh https://raw.githubusercontent.com/juewuy/ShellCrash/master/install.sh && sh /tmp/install.sh

Follow the on-screen prompts to complete the installation. Once installed, access the web interface by navigating to http://your-device-ip:9999 in your web browser.

To update ShellCrash, run:

clash

And select the update option from the menu.

Competitor Comparisons

16,571

A Clash Client For OpenWrt

Pros of OpenClash

  • More comprehensive feature set, including advanced routing and policy groups
  • Better integration with OpenWrt systems
  • Larger and more active community, leading to frequent updates and improvements

Cons of OpenClash

  • Higher resource consumption, which may impact performance on low-end devices
  • Steeper learning curve due to more complex configuration options
  • Potentially less stable on non-OpenWrt systems

Code Comparison

OpenClash configuration example:

proxy-groups:
  - name: "Auto"
    type: url-test
    proxies:
      - "Server1"
      - "Server2"
    url: 'http://www.gstatic.com/generate_204'
    interval: 300

ShellCrash configuration example:

config_group_name="Auto"
config_group_type="url-test"
config_group_proxies="Server1,Server2"
config_group_url="http://www.gstatic.com/generate_204"
config_group_interval=300

While both projects aim to provide Clash functionality on embedded devices, OpenClash offers a more feature-rich experience at the cost of increased complexity and resource usage. ShellCrash, on the other hand, focuses on simplicity and broader compatibility, making it potentially more suitable for users with limited hardware or those seeking a straightforward setup process.

15,239

A simple Python Pydantic model for Honkai: Star Rail parsed data from the Mihomo API.

Pros of mihomo

  • More active development with frequent updates
  • Broader platform support, including mobile devices
  • Enhanced performance and stability for handling complex network configurations

Cons of mihomo

  • Steeper learning curve for new users
  • Less comprehensive documentation compared to ShellCrash

Code Comparison

ShellCrash:

#!/bin/sh
# ShellCrash configuration script
crash_dir="/etc/shellcrash"
config_file="$crash_dir/config.yaml"

mihomo:

package main

import (
    "github.com/Dreamacro/clash/constant"
    "github.com/Dreamacro/clash/hub/executor"
)

Key Differences

  • ShellCrash is primarily a shell-based implementation, making it easier to deploy on various systems with minimal dependencies
  • mihomo is written in Go, offering better performance and cross-platform compatibility
  • ShellCrash focuses on simplicity and ease of use, while mihomo provides more advanced features and customization options

Use Cases

  • ShellCrash: Ideal for users who prefer a lightweight, script-based solution and have simpler networking needs
  • mihomo: Better suited for power users and those requiring advanced traffic routing capabilities across multiple platforms

Community and Support

Both projects have active communities, but mihomo tends to have more frequent updates and a larger user base, potentially leading to faster issue resolution and feature development.

4,027

Yet Another Clash Dashboard

Pros of yacd

  • Focused on providing a clean, modern web dashboard for Clash
  • Lightweight and easy to integrate into existing Clash setups
  • Actively maintained with frequent updates and bug fixes

Cons of yacd

  • Limited to Clash configuration and monitoring
  • Requires a separate Clash core to function
  • Less comprehensive system-wide network management features

Code comparison

yacd (React component):

const ConnectionItem = ({ connection }) => (
  <div className="connection-item">
    <span>{connection.host}</span>
    <span>{connection.chains.join(' > ')}</span>
    <span>{formatTraffic(connection.upload + connection.download)}</span>
  </div>
);

ShellCrash (Shell script):

start_clash() {
  if [ "$mix_port" -ne 7890 ]; then
    sed -i "s/7890/$mix_port/g" $CFG_PATH
  fi
  $clash_bin -d $clash_dir -f $CFG_PATH >/dev/null 2>&1 &
  clash_pid=$!
}

Summary

yacd is a specialized web dashboard for Clash, offering a modern interface for configuration and monitoring. ShellCrash, on the other hand, is a more comprehensive network management tool that includes Clash functionality along with additional features for system-wide network control. While yacd excels in its focused approach and clean design, ShellCrash provides a broader range of networking capabilities and system integration.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README


ShellCrash

中文 | English

Function introduction:

~Convenient use in Shell environment through management script Crash
~Support management of Crash functions
~Support online import Crash supports sharing, subscription and configuration links
~Support configuration timing tasks, support configuration file timing updates
~Support online installation and Use local web panel to manage built-in rules
~Support routing mode, native mode and other mode switching
~Support online update

Equipment support:

~Support various router devices based on OpenWrt or secondary custom development using OpenWrt
~Support various devices running standard Linux systems (such as Debian/CenOS/Armbian, etc.)
~Compatible with Padavan firmware (conservative mode), Pandora firmware
~Compatible with various types of devices customized and developed using the Linux kernel
——————————
~For more device support, please submit an issue or go to the TG group for feedback (the device name and the device core information returned by running uname -a must be provided)