Skip to content

sobilawadma/astron-rpa

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AstronRPA

AstronRPA Logo

🤖 Enterprise-grade Robotic Process Automation (RPA) Development Platform

License Python Java Vue Docker GitHub Stars

English | 简体中文

📑 Table of Contents

📋 Overview

AstronRPA is an all-in-one Robotic Process Automation (RPA) development tool that provides enterprises and developers with a complete RPA automation solution from design to deployment. The platform integrates the latest AI language models, rich component libraries, various development modes and frameworks, enabling developers to build powerful automation processes in the most convenient way.

AstronRPA is derived from the "iFlytek RPA Platform" which has served tens of thousands of enterprises and millions of developers, and we have made its core engine completely open source. Through visual design and build tools, developers can quickly create and debug robots, applications, and workflows using no-code or low-code approaches, enabling powerful RPA application development and more customized business logic.

🎯 Why Choose AstronRPA?

  • 🏭 Production Ready: Mature platform serving tens of thousands of enterprises
  • 👨‍💻 Developer Friendly: Visual design + comprehensive APIs and documentation
  • ☁️ Cloud Native: Built on microservices architecture with containerization support
  • 🔓 Open Source: Core engine completely open source, community-driven development
  • 🤖 AI Powered: Integrated with DeepSeek and other large language models
  • 🧩 Rich Components: 25+ professional RPA component library

✨ Core Features

  • 🚀 High Performance - Python 3.13+ based high-performance execution engine with distributed support
  • 🔒 Enterprise Security - Complete permission management, audit logs, and data encryption
  • 🔧 Easy Integration - Rich API interfaces and SDKs with multi-language support
  • 📊 Real-time Monitoring - Complete execution status monitoring, performance metrics, and alerting
  • 🌍 Multi-platform Support - Windows, Linux, and containerized deployment support
  • 📈 Elastic Scaling - Microservices architecture with horizontal scaling and load balancing

🎯 Visual Design

  • Drag-and-drop process designer
  • Real-time preview and debugging
  • Rich component templates
  • Smart connection and layout

🤖 AI Empowerment

  • Intelligent element recognition
  • OCR text extraction
  • Automatic CAPTCHA recognition
  • Natural language process generation

🔧 Component-based Development

  • 25+ professional RPA components
  • Standardized component interfaces
  • Custom component extensions
  • Component version management

📊 Execution Monitoring

  • Real-time execution status
  • Detailed logging
  • Performance metrics statistics
  • Exception alert notifications

🌐 Multi-platform Support

  • Web-based online editing
  • Desktop local execution
  • Mobile monitoring view
  • API interface integration

🛠️ Tech Stack

Frontend: Vue 3 + TypeScript + Vite + Ant Design Vue Backend Services: Java Spring Boot + Python FastAPI Data Storage: MySQL + Redis Message Queue: Asynchronous task processing support Containerization: Docker + Docker Compose Desktop App: Tauri (Rust + Web) Package Management: pnpm workspace monorepo Monitoring: Integrated SkyWalking distributed tracing

📱 Screenshots

Visual Process Designer Execution Monitoring Dashboard

🏗️ Architecture Overview

Architecture Overview

Architecture Details

Frontend Architecture

  • Framework: Vue 3 + TypeScript + Vite
  • UI Components: Ant Design Vue + VXE Table
  • State Management: Pinia
  • Desktop App: Tauri (Rust + Web Technologies)
  • Package Management: pnpm workspace monorepo

Backend Architecture

  • Main Service: Java Spring Boot 2.3.11
  • AI Service: Python FastAPI + DeepSeek Integration
  • OpenAPI Service: Python FastAPI
  • Resource Service: Java Spring Boot
  • Database: MySQL + Redis
  • Message Queue: Support for asynchronous task processing

RPA Engine

  • Language: Python 3.13+
  • Framework: FastAPI + asyncio
  • Component Architecture: 25+ professional RPA components
  • Executor: Support atomic operations, workflows, record & replay
  • Communication: WebSocket real-time communication
  • Locating Technology: Image recognition, OCR, UI automation

Deployment Architecture

  • Containerization: Docker + Docker Compose
  • Microservices: Independent service modules, deployable separately
  • Observability: Integrated SkyWalking distributed tracing
  • Load Balancing: Nginx reverse proxy

🚀 Quick Start

System Requirements

  • Operating System: Windows 10/11 (primary support), macOS, Linux
  • Node.js: >= 22
  • Python: 3.13.x
  • Java: JDK 8+
  • pnpm: >= 9
  • rustc:>= 1.90.0
  • UV: Python package management tool
  • 7-Zip: For creating deployment archives

Using Docker

Recommended for quick deployment:

# Clone the repository
git clone https://github.com/iflytek/astron-rpa.git
cd astron-rpa

# Enter docker directory
cd docker

# Start the container stack
docker-compose up -d

# Check service status
docker-compose ps
  • Access the application at http://localhost:8080
  • For production deployment and security hardening, refer to Deployment Guide

Source Deployment

One-Click Launch (Recommended)

  1. Prepare Python Environment

    # Prepare a Python 3.13.x installation directory
    # Can be a local folder or system installation path
    # The script will copy this directory to create python_base and python_core
  2. Run Packaging Script

    # Using local Python313 folder (auto-detected)
    pack.bat
    
    # Specify custom Python directory
    pack.bat "" "C:\Python313"
    pack.bat "" "D:\Python"
    pack.bat "" "Python313"
    
    # With custom 7-Zip path and Python directory
    pack.bat "D:\Tools\7-Zip\7z.exe" "C:\Python313"
  3. Build Frontend Application

    cd frontend
    pnpm install
    copy packages/web-app/.env.example packages/web-app/.env
    pnpm build:web
  4. Build Tauri Application

    cd frontend
    pnpm install
    pnpm build:tauri 

Development Environment

# Install dependencies
cd frontend
pnpm install

# Configure environment variables (for required fields, please refer to the comments in .env)
copy packages/web-app/.env.example packages/web-app/.env

# Start web development server
pnpm dev:web

# Start Tauri desktop app (development mode)
pnpm dev:tauri

# Start backend services (need to configure database first)
cd backend/robot-service
mvn spring-boot:run

📦 Component Ecosystem

Core Component Packages

  • rpasystem: System operations, process management, screenshots
  • rpabrowser: Browser automation, web page operations
  • rpagui: GUI automation, mouse and keyboard operations
  • rpaexcel: Excel spreadsheet operations, data processing
  • rpacv: Computer vision, image recognition
  • rpaai: AI intelligent service integration
  • rpadatabase: Database connections and operations
  • rpanetwork: Network requests, API calls
  • rpaemail: Email sending and receiving
  • rpadocx: Word document processing
  • rpapdf: PDF document operations
  • rpaencrypt: Encryption and decryption functions

Execution Framework

  • atomic: Atomic operation definition and execution
  • executor: Workflow execution engine
  • recording: Operation recording and playback
  • param_utils: Parameter processing tools

Shared Libraries

  • rpaframe: RPA framework core
  • rpawebsocket: WebSocket communication
  • locator: Element locating technology

🌟 Core Features

🎯 Visual Design

  • Drag-and-drop process designer
  • Real-time preview and debugging
  • Rich component templates
  • Smart connection and layout

🤖 AI Empowerment

  • Intelligent element recognition
  • OCR text extraction
  • Automatic CAPTCHA recognition
  • Natural language process generation

🔧 Component-based Development

  • 25+ professional RPA components
  • Standardized component interfaces
  • Custom component extensions
  • Component version management

📊 Execution Monitoring

  • Real-time execution status
  • Detailed logging
  • Performance metrics statistics
  • Exception alert notifications

🌐 Multi-platform Support

  • Web-based online editing
  • Desktop local execution
  • Mobile monitoring view
  • API interface integration

📚 Documentation

🤝 Contributing

We welcome any form of contribution! Please check Contributing Guide

Development Guidelines

  • Follow existing code style
  • Add necessary test cases
  • Update relevant documentation
  • Ensure all checks pass

Contributing Steps

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

🌟 Star History

Star History Chart

💖 Sponsorship

📞 Getting Help

📄 License

This project is open source under the Open Source License.


Developed and maintained by iFlytek

Follow Star Fork Watch

AstronRPA - Making RPA development simple and powerful!

If you find this project helpful, please give us a ⭐ Star!

About

Enterprise-grade desktop RPA client with a pluggable library of atomic capabilities, policy‑friendly packaging, and CI/CD‑friendly CLI. Integrates with leading Agent platforms and LLMs for end‑to‑end desktop/web automation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 39.5%
  • Vue 19.4%
  • TypeScript 16.6%
  • Java 15.8%
  • Makefile 5.0%
  • JavaScript 1.1%
  • Other 2.6%