Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

🧪 Experimental Web GUI for real-time APK decompilation using JADX, Docker, Flask, and SocketIO.

NotificationsYou must be signed in to change notification settings

HelgeSverre/jadx-webgui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ Overview

This project demonstrates real-time output streaming from a backend process to a frontend using SocketIO and Python.It usesJADX to decompile an uploaded APK file, streaming the output to the frontendin real-time. Additional featuresinclude browsing decompiled files and scanning for URLs and Firebase keys.

The project serves as a testbed for ideas, exploring how to build upon this concept. It's not intended for productionuse but as a learning tool for working with websockets, Docker, and Flask, and building tools for APK analysis.

Feel free to fork and play around with it.

🚀 Features

  • Real-Time Output Streaming: Uses SocketIO to stream live output from the backend process (JADX) to the frontend,providing immediate feedback.
  • Wrapping a Complex Process: Demonstrates how to handle and stream output from a non-trivial task like APKdecompilation.
  • Dockerized Environment: Both backend and frontend are containerized using Docker, making it easy to build and runthe application.
  • Tech Stack:
    • Backend: Flask (Python) for the API, with SocketIO for real-time communication.
    • Frontend: Svelte with TailwindCSS for building a responsive user interface.

🛠️ Setup and Installation

Clone the Repository

Clone the repository to your local machine:

git clone git@github.com:HelgeSverre/jadx-webgui.gitcd jadx-webgui

Quick Start with Docker Compose

To build and run the application using Docker Compose:

# Build and run the containersdocker compose up --build -d# Stop and remove containersdocker compose down

Access the application athttp://localhost:8080.

Backend Setup

To build and run the backend separately:

# Navigate to the API directorycd api# Format the Python codepipx run black app.py# Build the Docker imagedocker build -t decompiler-backend.# Run the Docker containerdocker run -p 8080:5000 \  -v$(pwd)/uploads:/tmp/uploads \  -v$(pwd)/decompiled:/tmp/decompiled \  decompiler-backend# Or as a one-linerdocker build -t decompiler-backend.&& docker run -p 8080:5000 -v$(pwd)/uploads:/tmp/uploads -v$(pwd)/decompiled:/tmp/decompiled decompiler-backend

Frontend Setup

Using Docker 🐳

# Build the Docker imagedocker build -t decompiler-frontend.# Run the Docker containerdocker run -p 3000:3000 decompiler-frontend

Without Docker 🚀

# Navigate to the web directorycd web# Install dependenciesyarn install# Format the codeyarn format# Run the development serveryarn dev

🧹 Code Formatting

To maintain code consistency:

# Format backend Python codepipx run black api/app.py# Format frontend codeyarn --cwd web format# One-liner for bothpipx run black api/app.py&& yarn --cwd web format

📝 Notes

This project is primarily an experiment to see how to stream output from a backend process to the frontend in real-timeusing sockets. It serves as a practical example of handling complex tasks within a Dockerized environment and streamingtheir output, rather than focusing solely on the APK decompilation.

⚠️ Disclaimer

This project is provided for educational and research purposes only. The authors and contributors are not responsiblefor any misuse or damage that may result from using this tool. Users should ensure they have the right to decompileandanalyze any APK files they process with this tool.

Remember that decompiling applications without permission may violate terms of service, copyright laws, or other legalagreements. Always respect intellectual property rights and use this tool responsibly and ethically.

By using this software, you agree to these terms and acknowledge that you use it at your own risk.

You know the drill.

About

🧪 Experimental Web GUI for real-time APK decompilation using JADX, Docker, Flask, and SocketIO.

Topics

Resources

Stars

Watchers

Forks


[8]ページ先頭

©2009-2025 Movatter.jp