Skip to content

πŸ’» A cross-platform desktop application to identify libraries used inside an android application ⚑

License

Notifications You must be signed in to change notification settings

theapache64/stackzy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ stackzy

Twitter: theapache64

A desktop app to analyse APK. Built using Compose desktop

✨ Demo

πŸ“½οΈ Usage

πŸ’» Install

Platform Format Download Status
Linux DEB Download Button Experimental
JAR Download Button Experimental
Windows MSI Download Button Experimental
JAR Download Button Experimental
MacOS DMG Download Button Experimental
JAR (ARM64) Download Button Experimental
JAR (x64) Download Button Experimental

πŸ“‹ Installation Notes

  • JAR files: Require Java 15 or above to run
  • MacOS DMG: The DMG file is not notarized and may trigger a security warning. To resolve this:
    1. Right-click the app and select "Open"
    2. If prompted with a security warning, go to System Preferences β†’ Security & Privacy
    3. Click "Open Anyway" next to the blocked app message
  • Alternative build: If you prefer building from source, clone the repo and execute ./gradlew createDistributable

πŸ‹ Dependency

  • Java 8 or above

πŸ—οΈοΈ Built with

What How
🎭 User Interface Compose Desktop
πŸ— Architecture MVVM
🧠 Backend Retrosheet
πŸ’‰ DI Dagger2
πŸ› οΈ APK Decompiling ApkTool
β˜• Dex to Java jadx
πŸ›£οΈ Navigation Decompose
🌊 Async Coroutines + Flow
🌐 Networking Retrofit
πŸ“„ JSON Moshi
⌨️ Logging Arbor
πŸ’» ADB Adam
πŸ§ͺ Testing DaggerMock + JUnit

πŸ˜‚ Fun Facts

  • Stackzy uses a google sheet as the backend, thanks to Retrosheet

  • The initial name of Stackzy was Which Stack

  • Stackzy uses a gloabl caching mechanism, which works as a centralized caching system. Means, if someone decompiled WhatsApp, the next time you try to find the stack, it won't be decompiled and the result will be served from the cache.

πŸ™‡ Credits

  • Special thanks to @mikepenz for contributing 200+ libraries from his project AboutLibraries πŸ“š
  • Special thanks to @SpikeySanju for the beautiful design 😎
  • Icons are from flaticon.com
  • Illustrations are from evernote.design
  • Thanks to all amazing people at Twitter for inspiring me to continue the development of this project.

πŸ₯Ό Test

Before executing any test, ensure

  • A device has connected to the adb
  • a valid PLAY_API_GOOGLE_USERNAME and PLAY_API_GOOGLE_PASSWORD defined in your environment.

🀝 Contributing

❀ Show your support

Give a ⭐️ if this project helped you!

Patron Link

πŸ“ License

Copyright Β© 2021 - theapache64

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

This README was generated by readgen ❀

About

πŸ’» A cross-platform desktop application to identify libraries used inside an android application ⚑

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Languages