Convert Figma logo to code with AI

CareyWang logosub-web

No description available

5,003
1,838
5,003
8

Top Related Projects

Utility to convert between various subscription format

3,266

SSR 去广告ACL规则/SS完整GFWList规则/Clash规则碎片,Telegram频道订阅地址

搜集、整理、维护 Surge / Quantumult (X) / Shadowrocket / Surfboard / clash (Premium) 实用规则。

🦄️ 🎃 👻 Clash Premium 规则集(RULE-SET),兼容 ClashX Pro、Clash for Windows 等基于 Clash Premium 内核的客户端。

Quick Overview

CareyWang/sub-web is a web-based subscription conversion tool for various proxy protocols. It provides a user-friendly interface for converting and combining different subscription formats, making it easier for users to manage and utilize multiple proxy services.

Pros

  • Easy-to-use web interface for subscription conversion
  • Supports multiple proxy protocols and subscription formats
  • Customizable output options for tailored results
  • Open-source project with potential for community contributions

Cons

  • Requires self-hosting or reliance on public instances
  • May have limitations in handling certain subscription formats
  • Potential security concerns when processing sensitive subscription data
  • Limited documentation for advanced usage and customization

Getting Started

To set up and run sub-web locally:

  1. Clone the repository:

    git clone https://github.com/CareyWang/sub-web.git
    
  2. Navigate to the project directory:

    cd sub-web
    
  3. Install dependencies:

    npm install
    
  4. Start the development server:

    npm run serve
    
  5. Access the web interface at http://localhost:8080

For production deployment, build the project using:

npm run build

Then serve the contents of the dist directory using a web server of your choice.

Competitor Comparisons

Utility to convert between various subscription format

Pros of subconverter

  • More comprehensive conversion capabilities, supporting a wider range of proxy protocols
  • Backend-focused, offering greater flexibility for integration into various systems
  • Actively maintained with frequent updates and improvements

Cons of subconverter

  • Requires more technical knowledge to set up and configure
  • Lacks a built-in user interface, making it less accessible for non-technical users
  • May require additional resources to run as a backend service

Code Comparison

sub-web (Vue.js frontend):

export default {
  data() {
    return {
      sourceSubUrl: '',
      targetSubUrl: '',
      customBackend: ''
    }
  },
  // ...
}

subconverter (C++ backend):

int main(int argc, char *argv[]) {
    init();
    if(argc > 1 && strcmp(argv[1], "-cfw") == 0)
        cfw_child_process();
    else
        start_web_server();
    return 0;
}

sub-web focuses on providing a user-friendly interface for subscription conversion, while subconverter offers a powerful backend engine for handling complex conversion tasks. sub-web is more suitable for end-users who prefer a graphical interface, whereas subconverter is better for developers and advanced users who need more control and integration options.

3,266

SSR 去广告ACL规则/SS完整GFWList规则/Clash规则碎片,Telegram频道订阅地址

Pros of ACL4SSR

  • More comprehensive rule sets for content filtering and ad blocking
  • Regularly updated with community contributions
  • Includes pre-configured lists for popular services and regions

Cons of ACL4SSR

  • Primarily focused on rule sets, lacking a user-friendly interface
  • May require more technical knowledge to implement and customize
  • Limited documentation in English

Code Comparison

sub-web:

export function getShortId(id) {
  return id.split('-')[0]
}

ACL4SSR:

[custom]
;不要随意改变关键字,否则会导致出错
;acl4SSR规则

;设置规则标志位
ruleset=🎯 全球直连,rules/ACL4SSR/Clash/LocalAreaNetwork.list

The code snippets highlight the different focus areas of the two projects. sub-web emphasizes frontend functionality, while ACL4SSR concentrates on rule configurations for network filtering.

sub-web provides a more user-friendly interface for subscription management, while ACL4SSR offers extensive rule sets for content filtering and ad blocking. ACL4SSR may require more technical expertise to implement, but it provides more comprehensive and regularly updated rules for various services and regions.

搜集、整理、维护 Surge / Quantumult (X) / Shadowrocket / Surfboard / clash (Premium) 实用规则。

Pros of SS-Rule-Snippet

  • Provides a comprehensive set of rules for various proxy tools and platforms
  • Regularly updated with new rules and optimizations
  • Offers detailed documentation and usage instructions

Cons of SS-Rule-Snippet

  • Requires manual configuration and integration with proxy tools
  • May have a steeper learning curve for beginners
  • Limited customization options without modifying the rule files directly

Code Comparison

SS-Rule-Snippet (Surge configuration example):

[Rule]
DOMAIN-SUFFIX,googleapis.com,Proxy
DOMAIN-SUFFIX,instagram.com,Proxy
DOMAIN-SUFFIX,cdninstagram.com,Proxy
DOMAIN-SUFFIX,fbcdn.net,Proxy
DOMAIN-SUFFIX,facebook.com,Proxy

sub-web (Vue.js component example):

<template>
  <div class="subscription-card">
    <el-card>
      <div slot="header" class="clearfix">
        <span>{{ name }}</span>
      </div>
      <div class="text item">
        {{ url }}
      </div>
    </el-card>
  </div>
</template>

While SS-Rule-Snippet focuses on providing pre-configured rule sets, sub-web offers a web-based interface for managing and converting proxy subscriptions. SS-Rule-Snippet is more suitable for users who prefer direct rule management, while sub-web caters to those who want a user-friendly GUI for subscription handling.

🦄️ 🎃 👻 Clash Premium 规则集(RULE-SET),兼容 ClashX Pro、Clash for Windows 等基于 Clash Premium 内核的客户端。

Pros of clash-rules

  • Focuses specifically on providing rule sets for Clash, making it more specialized
  • Regularly updated with the latest domain lists and IP ranges
  • Offers a variety of rule sets for different purposes (e.g., ads, streaming, gaming)

Cons of clash-rules

  • Limited to rule sets only, doesn't provide a user interface or subscription conversion
  • Requires more technical knowledge to implement and use effectively
  • May need additional tools or scripts to integrate with Clash clients

Code comparison

sub-web:

export function getClashType() {
  return localStorage.getItem('clash_type') || 'clash';
}

clash-rules:

payload:
  - DOMAIN-SUFFIX,googleapis.cn
  - DOMAIN-SUFFIX,googleapis.com
  - DOMAIN-SUFFIX,google.cn

Summary

sub-web is a web-based tool for converting and managing proxy subscriptions, offering a user-friendly interface. clash-rules, on the other hand, focuses solely on providing up-to-date rule sets for Clash. While sub-web offers more versatility in subscription management, clash-rules excels in maintaining specific, curated rule sets for various purposes. The choice between the two depends on whether you need a comprehensive subscription management tool or specialized rule sets for Clash.

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

sub-web

基于 vue-cli 与 tindy2013/subconverter 后端实现的配置自动生成。

Table of Contents

ChangeLog

  • 20200730

    • 独立各类后端配置到 .env 文件中,现在修改后端只需要修改 .env 即可。

Docker

docker run -d -p 58080:80 --restart always --name subweb careywong/subweb:latest

若需要对代码进行修改,你需要在本地构建镜像并运行。 注:每次修改代码,你都需要重新执行 docker build 来执行打包操作。

docker -v
Docker version 23.0.4, build f480fb1

docker build -t subweb-local:latest .
docker run -d -p 58080:80 --restart always --name subweb subweb-local:latest

Requirements

你需要安装 Node 与 Yarn 来安装依赖与打包发布。你可以通过以下命令查看是否安装成功。 注:以下步骤为 Ubuntu 下相应命令,其他系统请自行修改。为了方便后来人解决问题,有问题请发 issue。

node -v
v16.20.0

yarn -v
1.22.19

Install

yarn install

Usage

yarn serve

浏览器访问 http://localhost:8080/

Deploy

发布到线上环境,你需要安装依赖,执行以下打包命令,生成的 dist 目录即为发布目录。如需修改默认后端,请修改 src/views/Subconverter.vue 中 defaultBackend 配置项。

yarn build

你需要安装 nginx (或其他 web 服务器)并正确配置。以下为示例配置,你需要修改 example.com 为自己域名并配置正确的项目根路径(https 自行配置)。

server {
    listen 80;
    server_name example.com;

    root /var/www/http/sub-web/dist;
    index index.html index.htm;

    error_page 404 /index.html;

    gzip on; #开启gzip压缩
    gzip_min_length 1k; #设置对数据启用压缩的最少字节数
    gzip_buffers 4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 6; #设置数据的压缩等级,等级为1-9,压缩比从小到大
    gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml; #设置需要压缩的数据格式
    gzip_vary on;

    location ~* \.(css|js|png|jpg|jpeg|gif|gz|svg|mp4|ogg|ogv|webm|htc|xml|woff)$ {
        access_log off;
        add_header Cache-Control "public,max-age=30*24*3600";
    }
}

Related

Contributing

PRs accepted.

Small note: If editing the README, please conform to the standard-readme specification.

License

MIT © 2020 CareyWang