Add automatic <uses-permission> entries for declared/custom permissions (eg. names ending with _PERMISSION or containing DYNAMIC_RECEIVER). Ensure MANAGE_EXTERNAL_STORAGE is added after READ_EXTERNAL_STORAGE when needed. Improve handling of permission/provider name replacements, targetSdk and application attribute injection (debuggable, legacy storage, embedded dex, extractNativeLibs) and add manager metadata entry. Also minor formatting and visitor restructuring. |
||
|---|---|---|
| .github | ||
| app | ||
| gradle | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| build.gradle.kts | ||
| crowdin.yml | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| settings.gradle.kts | ||
Shiggy Manager
A fast, friendly, and focused Android mod manager for Discord — rebranded for the ShiggyCord community from Wintry.
✨ Why Shiggy Manager?
Shiggy Manager makes installing and managing Discord mods simple and safe. It's built from the ground up by Aliucord Team with reliability and UX in mind, and changed to work with new versions by Wintry Team:
- Clean, ShiggyCord-branded UI and icons
- Safe vector handling to avoid runtime inflation issues
- Fast install/update workflows
🚀 Quick Start
Download & run — get a released APK from Releases and install with:
Get newest apk from release list and install it.
Build from source — clone and assemble:
git clone https://github.com/kmmiio99o/ShiggyManager.git
cd ShiggyManager
./gradlew :app:assembleDebug
APK output: app/build/outputs/apk/debug/app-debug.apk.
⚙️ Features
- One-tap install, update, or remove of supported mods
- About screen with contributors and "fun facts"
- Safe vector drawable usage (vector groups + scale/translate)
- Customizable branding via resources (colors, icons, strings)
🎨 Customization & Theming
You can fully tailor the appearance:
- App name: edit
app/src/main/res/values/strings.xml— ensure the UI uses@string/app_name. - Icons: swap
app/src/main/res/drawable/ic_rounded_shiggy.xmlandic_discord_shiggy.xmlwith your vector or PNG. - Colors: use
colors.xmlto apply a new palette. - Glyph sizing: vector drawables support
<group android:scaleX="" android:scaleY="" android:translateX="" android:translateY="">. To center an element after scaling, compute translation as:
translate = (viewportSize - (viewportSize * scale)) / 2
# Example for viewport 256 and scale 0.7 -> translate = 38.4
If you see a missing space in the name (e.g., ShiggyManager), search for usages of @string/shiggy — that key intentionally contains the compact brand name. Prefer @string/app_name for UI labels that expect "Shiggy Manager".
🧩 Troubleshooting
- Vector inflation errors:
- Check
adb logcatfor FATAL EXCEPTION and the drawable path. - Validate vector XML: no unsupported attributes, proper
pathData. - If issues persist, consider a
layer-listreference to the launcher icon or a PNG fallback.
- Check
🤝 Contributing
We love contributions! Here's how to help:
- Fork the repository.
- Create a branch:
git checkout -b feat/my-cool-feature
- Make your changes, run tests and build:
./gradlew :app:assembleDebug
- Open a PR describing:
- What you changed
- Why it helps
- Screenshots if UI changes
Please keep PRs focused and document behavior changes.
🙌 Code of Conduct
Be kind and constructive. Treat everyone with respect. If you want to adopt a formal Code of Conduct, add a CODE_OF_CONDUCT.md at the root and link to it here.
📝 Release Notes & Changelog
We keep a concise changelog in the release notes. Please add meaningful entries for user-facing changes and breaking updates.
🧾 License
Shiggy Manager is open source under the OSL License. See LICENSE for details.
💬 Contact & Support
- Repo: https://github.com/kmmiio99o/ShiggyManager
- Issues & feature requests: https://github.com/kmmiio99o/ShiggyManager/issues
- For community chat, check the in-app "Support Server" link or the repo description.
Made with ❤️ for the ShiggyCord community — keep it playful, keep it safe.