https://github.com/penthertz/rf-swift
π A powerful multi-platform RF toolbox that deploys specialized radio tools in seconds on Linux, Windows, and macOSβsupporting x86_64, ARM64 (Raspberry Pi, Apple Silicon), and RISC-V architectures without disrupting your primary OS. π‘β¨
https://github.com/penthertz/rf-swift
arm64 docker hardware linux pentesting rf risc-v sdr security security-audit security-tools telecommunications windows wireless wireless-security x86-64
Last synced: 5 months ago
JSON representation
π A powerful multi-platform RF toolbox that deploys specialized radio tools in seconds on Linux, Windows, and macOSβsupporting x86_64, ARM64 (Raspberry Pi, Apple Silicon), and RISC-V architectures without disrupting your primary OS. π‘β¨
- Host: GitHub
- URL: https://github.com/penthertz/rf-swift
- Owner: PentHertz
- License: gpl-3.0
- Created: 2024-05-18T13:38:03.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-21T20:17:22.000Z (6 months ago)
- Last Synced: 2025-04-25T15:08:56.446Z (5 months ago)
- Topics: arm64, docker, hardware, linux, pentesting, rf, risc-v, sdr, security, security-audit, security-tools, telecommunications, windows, wireless, wireless-security, x86-64
- Language: Go
- Homepage: https://rfswift.io/
- Size: 35.3 MB
- Stars: 180
- Watchers: 5
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# π RF Swift π‘ π οΈ
## π What is RF Swift?
RF Swift is a revolutionary toolbox that transforms any computer into a powerful RF testing laboratory without requiring a dedicated operating system. π Unlike traditional approaches that force you to sacrifice your primary OS, RF Swift brings containerized RF tools to your existing environment. π
### β‘ Why RF Swift Outperforms Dedicated OS Solutions
| Feature | RF Swift | Dedicated OS (Kali/DragonOS) |
|---------|---------|------------------------------|
| **π Host OS Preservation** | β Keep your existing OS | β Requires dedicated partition or VM |
| **π‘οΈ Tool Isolation** | β Tools contained without system impact | β Tools can destabilize system |
| **β‘ Deployment Speed** | β Seconds to deploy | β Hours for full installation |
| **πΎ Disk Space** | β Only install tools you need | β Requires 20-50GB minimum |
| **π Updates** | β Update individual tools without risk | β System-wide updates can break functionality |
| **π Multi-architecture** | β x86_64, ARM64, RISCV64 and more! | β Limited architecture support |
| **π Device Binding** | β Dynamic - add/remove without restart | β Static - requires reboot for changes |
| **π Reproducibility** | β Identical environments everywhere | β System drift between installations |
| **πΌ Work Environment** | β Use alongside productivity tools | β Switch contexts between systems |## β¨ Key Features
- **π Non-disruptive Integration**: Run specialized RF tools while continuing to use your preferred OS for daily work
- **π§© Modular Tool Selection**: Deploy only the tools you need, when you need them
- **π‘οΈ Containerized Isolation**: Prevent RF tools from affecting system stability or security
- **π Cross-platform Compatibility**: Works seamlessly on Linux, Windows, and macOS
- **π Dynamic Hardware Integration**: Connect and disconnect USB devices without restarting
- **π οΈ Custom Environment Creation**: Build specialized images for specific assessment needs
- **β‘ GPU Acceleration**: Dedicated images with OpenCL support for Intel and NVIDIA GPUs, and more
- **πΎ Space Efficiency**: Use a fraction of the disk space required by dedicated OS solutions
- **π Version Control**: Maintain multiple tool versions simultaneously without conflicts## π Quick Start
### πΏ Installation
#### π§ Linux (Recommended)
```bash
# Clone the repository
git clone https://github.com/PentHertz/RF-Swift.git
cd RF-Swift# Run the installation script
./install.sh
```The script will:
- π¦ Install Docker, BuildX, and Go (if needed)
- π¨ Build the RF Swift binary
- π Configure audio and X11 forwarding
- π Create an alias for easy access#### πͺ Windows
```powershell
# Clone the repository
git clone https://github.com/PentHertz/RF-Swift.git
cd RF-Swift# Run the Windows build script
.\build-windows.bat
```Additionally, install:
- π³ [Docker Desktop](https://docs.docker.com/desktop/install/windows-install/) for Windows
- π [usbipd](https://learn.microsoft.com/en-us/windows/wsl/connect-usb) for USB device forwarding### πββοΈ Running Your First Container
```bash
# Pull a pre-built image
rfswift images pull -i sdr_full# Create and run a container
rfswift run -i penthertz/rfswift:sdr_full -n my_sdr_container
```## π¬ Demo Videos
### π§ On Linux
https://github.com/PentHertz/RF-Swift/assets/715195/bb2ccd96-b688-4106-8fba-d82f84ff1ea4### πͺ On Windows (With GQRX)
https://github.com/PentHertz/RF-Swift/assets/715195/25a4a857-aa5a-4daa-9a08-28fa53d2f799### π₯οΈ Using OpenCL with Intel or NVIDIA GPU
## π¦ Available Specialized Images
RF Swift's container approach allows for specialized environments optimized for specific tasks:
| Category | Images | Description |
|----------|--------|-------------|
| π» SDR | `sdr_light`, `sdr_full` | Software-defined radio tools |
| π± Telecom | `telecom_utils`, `telecom_2Gto3G`, `telecom_4G_5GNSA`, `telecom_5G` | Mobile network analysis |
| πΆ Short-range | `bluetooth`, `wifi`, `rfid` | Bluetooth, Wi-Fi, and RFID tools |
| π§ Hardware | `hardware`, `reversing` | Hardware security tools |
| π Automotive | `automotive` | Vehicle communications |## π Real-World Advantages
### π For Professionals
- **π§° Assessment Readiness**: Deploy an RF and hardware lab in minutes at a client site
- **π Tool Consistency**: Eliminate "works on my machine" issues with consistent environments
- **βοΈ Parallel Workflows**: Run multiple isolated assessments simultaneously
- **π Document Storage**: Keep reports and evidence separate from tools
- **π οΈ Custom Toolsets**: Create specialized containers for specific engagements### π¬ For Researchers
- **π Reproducible Research**: Share exact tool environments with colleagues
- **π§ͺ Experiment Isolation**: Prevent experimental configurations from affecting other work
- **π Multi-platform Collaboration**: Collaborate across Linux, Windows, and macOS
- **π’ Version Control**: Test with specific tool versions without compatibility issues
- **β‘ Resource Efficiency**: Optimize container resources for specific research tasks### π¨βπ« For Educators
- **π« Classroom Deployment**: Identical environments for all students
- **π» No Reformatting**: Students keep their existing OS
- **π₯οΈ Low Hardware Requirements**: Works on standard lab computers
- **π Focused Learning**: Custom containers with only the tools needed for specific lessons
- **π Quick Reset**: Easily reset environments between classes## π Documentation
Comprehensive documentation is available at [rfswift.io](https://rfswift.io/), including:
- π [Getting Started Guide](https://rfswift.io/docs/getting-started/)
- π [Quick Start Tutorial](https://rfswift.io/docs/quick-start/)
- π [User Guide](https://rfswift.io/docs/guide/)
- π¨βπ» [Development Documentation](https://rfswift.io/docs/development/)
- π§° [List of Included Tools](https://rfswift.io/docs/guide/list-of-tools/)## π₯ Community & Support
- π¬ [Join our Discord](https://discord.gg/NS3HayKrpA) for community support
- π [Report issues](https://github.com/PentHertz/RF-Swift/issues) on GitHub
- π¦ Follow [FlUxIuS](https://x.com/intent/follow?screen_name=FlUxIuS) and [Penthertz](https://x.com/intent/follow?screen_name=Penthertz) on X (Twitter)## π€ Contributing
Contributions are welcome! Here's how you can help:
- π§° **Tool Integration**: Add new tools or improve existing ones
- π **Documentation**: Improve guides and examples
- π **Bug Reports**: Report issues you encounter
- π‘ **Feature Requests**: Suggest new features or improvements
- π¨βπ» **Code Contributions**: Submit PRs to enhance functionality## βοΈ License
RF Swift is released under GNU GPLv3 license. See LICENSE file for details.