This repository is an experimental branch for Ankimon with new features and community-driven development. You can try out the latest features, but beware, you may also have bugs and issues!
h0tp Owner @h0tp-ftw |
Peace Contributor @thepeacemonk |
Gill Contributor @gykoh |
richy Contributor @richy431 |
Unlucky Ankimon creator 8000 @unlucky-life |
Want to join us? Read below!
- Downloading the Experimental Ankimon Build
- Instructions for Current Contributors
- I don't know how to CODE! Where do I start?
- Instructions for New Contributors
- Need Help?
Releases will be published every time a major pull request is merged into main
; in simple words, after a major change is added. Check the Releases tab here! Make sure to BACKUP before updating!
If you want to download the files and source code directly:
- Click the green "Code" button near the top right of this page.
- Select "Download ZIP".
- Unzip the file on your computer.
- Make sure you have a backup of your
mypokemon.json
,mainpokemon.json
,badges.json
anditems.json
files (inuser_files
folder of your Ankimon installation) - In the downloaded folder, go in
src
->Ankimon
and copy all files inside the folder. - Paste these files into your Ankimon folder where the addon is installed in Anki! (Anki -> Add-ons -> Ankimon -> View Files)
- If you lost your progress, restore by adding the back-up files into the
user_files
folder!
-
Branching: Always create a new branch for your changes.
Name your branch using the format:name/branch-name
- e.g. If I am adding changes to achievement display, I named it as
h0tp/achievements-new-look
main
is used to get changes from branches (after testing), andupstream
will be used to send code to the official Ankimon repository. -
Pull Requests: After making your changes, open a Pull Request (PR) to merge your branch into the
main
branch.
Add a clear description of your changes in the PR. -
Testing: For the PRs that are created here, please feel free to review these changes and try them out. We will merge them ONLY if contributors show that it is working properly :)
-
After major changes, I will merge it to
upstream
branch, and add a PR to merge it with the official Ankimon branch.
Both me (h0tp) and Unlucky started with barely any experience. You do not need ANY experience to start, as long as you have a passion for Ankimon and can spend some time learning new stuff! Ankimon is largely made using Vibe-coding, i.e. getting AI assistance with coding.
It is made 100% by volunteers that help in their spare time. Having more people (like you) will help to make Ankimon better! It is also made using Python (for functions) and JavaScript (for data storage), which are easy to learn!
To get started:
- Download VS Code for coding
- Go through the W3schools Python tutorial - no need to learn and memorize every single topic in detail. Have a general understanding of what code looks like and how it works!
- Make some simple code for practice! For example, you could try making a calculator, or coding some new changes for Ankimon.
- Go through the Ankimon code, especially here and learn about how functions work. For example, if it says
for pokemon in self.excluded:
if self.can_catch(caught_pokemon, pokemon):
catchable.add(pokemon)
return catchable
Can you figure out what this code is actually trying to do?
- Start using AI! Use the AI service of your choice to get help with coding. Learn how to guide AI and spot the errors that AI makes in coding.
At this point, it is more important to let AI do the coding, and you should be able to guide it! Fixing the errors it makes will be your main concern.
-
Fork this repository:
Click the "Fork" button at the top right of this page to create your own copy. -
Make your changes:
Add your improvements or fixes in your forked repository. -
Submit a Pull Request:
- Push your changes to your fork.
- Go to this repository and click "Pull request".
- Add a description of your changes and submit.
-
After your first accepted PR, you will become access to this repository as a maintainer to help shape the project! You will also get access to our Discord channel for contributors and can collaborate on new features and fixes.
- Please reach out on the Ankimon Discord server
- You can also add to Issues or Discussions tabs here
Ankimon is an Anki addon designed to gamify your learning experience by allowing you to catch, collect, train, and fight with Pokémon within the Anki environment. With Ankimon, learning becomes an adventure where you can enhance your knowledge while having fun.
Support my Caffeine Addiction (something that helps building this Addon):
- Pokémon Collection: Catch and collect Pokémon as you progress through your Anki decks.
- Training: Train your Pokémon to improve their abilities and strengths.
- Battles: Engage in battles with other users on Pokémon Showdown to test your knowledge and skills.
- Interactive Learning: Ankimon integrates seamlessly with Anki, enhancing your learning process by adding an element of excitement and challenge.
-
Installation: Download and install Ankimon addon for Anki.
Important: You need to download: „Data Files, Sprite Files and Badges and Item Sprites“!
-
Catch Pokémon: As you review your Anki cards, encounter and catch Pokémon to add to your collection.
-
Training: Train your Pokémon using various methods to strengthen them for battles.
-
Battles: Challenge other users on Pokémon Showdown to battles using your trained Pokémon.
-
Bug Reporting: If you encounter any issues or bugs, please report them on the GitHub Issues Page. Your feedback helps improve the addon for everyone.
- Linux OS Before reporting an issue on Linux, make sure you check if it works with the package downloaded directly from the Anki github as it could be a problem with the package maintained by a third party (distro maintainer or flatpak)
- Addon Status: Ankimon is still in development. Please report any bugs you encounter to help improve the addon.
- Backup Files: Before updating the addon, ensure to copy your "mypokemon.json" and "mainpokemon.json" files to prevent data loss before any updates. Please check out my GitHub Ankimon Page before updating - I will let you know when an update is coming in.
- Compatibility: Currently, Ankimon is only compatible with PyQt6. Updates for compatibility with other versions will be provided in the future.
Start your Pokémon journey with Ankimon and make learning an adventure!
NOTE - for any contributions, make sure to create your own branch instead of merging into main
, and add pull requests with your changes. We will review these changes and merge onto main
after testing them.
h0tp @h0tp-ftw Peace @thepeacemonk Gill @gykoh richy @richy431