Skip to content

Update README.md

Update README.md #28

name: Build and Release
on:
push:
tags:
- "*"
branches:
- "main"
pull_request:
branches:
- "main"
jobs:
build-windows:
if: startsWith(github.ref, 'refs/tags/')
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "18"
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
architecture: "x64"
- name: Setup Python and venv
run: |
python -m venv venv
.\venv\Scripts\activate
python -m pip install --upgrade pip
python -m pip install wheel pyinstaller
pip install -r requirements.txt
- name: Install frontend dependencies
working-directory: ./frontend
run: |
npm install
npm run build
- name: Create .env file
run: |
echo "JWT_SECRET=${{ secrets.JWT_SECRET }}" >> backend/.env
echo "BOT_TOKEN=${{ secrets.BOT_TOKEN }}" >> backend/.env
echo "CLIENT_ID=${{ secrets.CLIENT_ID }}" >> backend/.env
echo "CLIENT_SECRET=${{ secrets.CLIENT_SECRET }}" >> backend/.env
- name: Execute build script
run: |
chmod +x build.sh
./build.sh
- name: Build Windows Executable
run: |
.\venv\Scripts\activate
pyinstaller --noconfirm --onefile --uac-admin --icon "frontend/public/favicon.ico" `
--paths "venv/Lib/site-packages" `
--add-data "backend;." `
--add-data "backend/.env;." `
--add-data "frontend/out;static" `
--add-data "venv/Lib/site-packages/fake_useragent/data;fake_useragent/data" `
--add-data "venv/Lib/site-packages/fake_useragent;fake_useragent" `
--add-data "venv/Lib/site-packages/streamlink;streamlink" `
--add-data "venv/Lib/site-packages/websocket;websocket" `
--add-data "venv/Lib/site-packages/cffi;cffi" `
--add-data "venv/Lib/site-packages/Crypto;Crypto" `
--add-data "venv/Lib/site-packages/psutil;psutil" `
--collect-data fake_useragent `
--collect-submodules streamlink `
--collect-submodules websocket `
--collect-submodules cffi `
--collect-submodules Crypto `
--hidden-import rich `
--hidden-import dotenv `
--hidden-import trio `
"backend/main.py" `
--name "KickViewerBOT.exe"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: windows-build
path: dist/KickViewerBOT.exe
build-macos:
runs-on: macos-latest
if: startsWith(github.ref, 'refs/tags/')
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "18"
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Setup Python and venv
run: |
python -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip
python -m pip install pyinstaller
pip install -r requirements.txt
- name: Install frontend dependencies
working-directory: ./frontend
run: |
npm install
npm run build
- name: Create .env file
run: |
echo "JWT_SECRET=${{ secrets.JWT_SECRET }}" >> backend/.env
echo "BOT_TOKEN=${{ secrets.BOT_TOKEN }}" >> backend/.env
echo "CLIENT_ID=${{ secrets.CLIENT_ID }}" >> backend/.env
echo "CLIENT_SECRET=${{ secrets.CLIENT_SECRET }}" >> backend/.env
- name: Execute build script
run: |
chmod +x build.sh
./build.sh
- name: Build MacOS App
run: |
source venv/bin/activate
pyinstaller --noconfirm --onefile --uac-admin --icon "frontend/public/favicon.ico" \
--paths "venv/lib/python3.11/site-packages" \
--add-data "backend:." \
--add-data "backend/.env:." \
--add-data "frontend/out:static" \
--add-data "venv/lib/python3.11/site-packages/fake_useragent/data:fake_useragent/data" \
--add-data "venv/lib/python3.11/site-packages/fake_useragent:fake_useragent" \
--add-data "venv/lib/python3.11/site-packages/streamlink:streamlink" \
--add-data "venv/lib/python3.11/site-packages/websocket:websocket" \
--add-data "venv/lib/python3.11/site-packages/cffi:cffi" \
--add-data "venv/lib/python3.11/site-packages/Crypto:Crypto" \
--add-data "venv/lib/python3.11/site-packages/psutil:psutil" \
--collect-data fake_useragent \
--collect-submodules streamlink \
--collect-submodules websocket \
--collect-submodules cffi \
--collect-submodules Crypto \
--hidden-import rich \
--hidden-import dotenv \
--hidden-import trio \
--hidden-import resource \
"backend/main.py" \
--name "KickViewerBOT"
- name: zip the app
run: |
cd dist
zip -r KickViewerBOT-MacOS.zip KickViewerBOT
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: macos-build
path: dist/KickViewerBOT-MacOS.zip
create-release:
needs: [build-windows, build-macos]
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: |
# 🚀 KickViewerBOT Release Notes V2.0
## 🎯 Core Features
- **Multi-threading System**: Support for up to 10000 simultaneous threads
- **Proxy Support**: Compatible with HTTP, SOCKS4, SOCKS5
- **Auto-update**: Automatic system updates
- **Cross-Platform**: Compatible with Windows, Linux, MacOS
## 🆕 New Features
### User Interface
- 🖥️ Modern and responsive React interface
- 📊 Real-time dashboard with statistics
- 🌙 Dark/Light mode
### Bot Features
- 📈 Advanced analytics
- 🔄 Automatic proxy rotation
- ⚡ Optimized performance mode
### Security
- 🔒 JWT Authentication
- 🛡️ Anti-detection protection
- 🔑 Secure credentials management
- 🌐 HTTPS/SSL Support
### Premium Features
- 📊 Detailed statistics
- 🔄 Auto-restart capability
- ⚡ High-performance mode
- 📈 Automatic scaling
## 🛠️ Technical Improvements
- Optimized Flask backend
- Asyncio support for better performance
- Improved memory management
- Detailed logging
- Documented RESTful API
## 🐛 Bug Fixes
- Memory leak fixes
- Connection stability improvements
- Random disconnection fixes
- CPU usage optimization
## 📚 Documentation
- Detailed installation guide
- API documentation
- Usage examples
- Troubleshooting guide
## 🔗 Links
- [Discord Support](https://discord.gg/2Sqvx25auv)
- [Patreon](https://www.patreon.com/hibo/membership)
## 💻 Installation
1. Download the executable
2. Launch the application
3. Login
4. Configure your settings
5. Start the bot
## ⚠️ Requirements
- Windows 10/11 64-bit or MacOS 10.15+
- 4GB RAM minimum
- Stable internet connection
## 🆘 Support
For assistance, join our Discord or consult the documentation.
draft: false
prerelease: false
- name: Upload Windows Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./artifacts/windows-build/KickViewerBOT.exe
asset_name: KickViewerBOT-Windows.exe
asset_content_type: application/octet-stream
- name: Upload MacOS Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./artifacts/macos-build/KickViewerBOT-MacOS.zip
asset_name: KickViewerBOT-MacOS.zip
asset_content_type: application/zip