Add UnifiedPush notification system with Ktor server
Implement push notifications via UnifiedPush protocol for timer-based
events (adventure completion, character evolution, special missions,
BE training, item effects). Includes:
- Ktor server module for timer scheduling and push delivery
- Android UnifiedPush 3.x PushService integration
- Push preferences in DataStore, HTTP client for server communication
- Settings UI for server URL, push toggle, and test notifications
- Timer registration in Adventure, Home, and Scan controllers
- Docker support for server deployment
- CLAUDE.md and editor rules for project conventions
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Merge pull request #47 from nacabaro/specialMissions/fix
Fix Special Missions a bit more
Fix Special Missions a bit more
Now they should behave a bit better, and it will not allow the watch to have multiple missions of the same type, plus you can now delete special missions.
Merge pull request #44 from jeffersoncarlospedroso/feature/add-multilanguage-support
Add multilanguage support (i18n) initial implementation
feat(i18n): continue translation work
Add multilanguage support (i18n) initial implementation
Merge remote-tracking branch 'origin/main'
Merge pull request #36 from nacabaro/card/card_management
Few things here and there
Few things here and there
- Card management, you can now modify the name of the cards and remove cards too.
- Also, support for multiple cards with the same ID works too. When scanning for the first time, if a repeat card exists, the user will be asked to choose which card the character comes from. Future scans will not ask since it is stored in the watch app reserved area.
Merge pull request #25 from nacabaro/database/adventure
Adventure mode
Phew
- Added adventure screen, dialogs, components and controllers needed to rock.
- Modified DTOs so that it is possible to tell if a character is in adventure or not
- Updated layout of items database
- Fixed an issue with importing bems where the character name would be read incorrectly
- Also added a ton of checks
Merge pull request #22 from nacabaro/database/items
Add items functionality
Added missing icons, ready to merge!
Here comes the train (with more things)
- Updated available items
- Created ItemsScreenController
- Moved the ItemsScreen to keep code organized
Things
- Added items store and a way to switch between the store and your items
- Added an items dialog, click on it to see details of the item (description, amount) and use it
- Added items store, it lists all the items available
Things items related
- Added a MyItems screen
- Added an ItemElement placeholder
- Included database with all the items in the app (not final)
- Also included some demo items
As of now items don't do anything, i'm still making the UI
Merge pull request #18 from nacabaro/ui/home_screen
A lot more things
A lot more things
- Moved scan button to inside the home screen
- Added items screen
- Scanning functionality updated to work with BEms
- Different home screen layouts depending on the configuration (BE with BEm, BE with DIm, since they don't have the same data, looking at you, special training)
- It is now possible to import BEms
- Character size is now more accurate, (no more big babies)
- Once sent to the watch, characters are deleted from the app, and it shouldn't fail
- Updated domain model to support evolution history.
TODO:
- Reorganize some of the code, mostly SQL queries and reorganize the scan screen functionality
- Create home layout for the VB watch
- Start figuring out reading data from the VB
- Also create VB data domain model
- Also start figuring out writing to the VB (it's 3 steps)
- Block off scan button until secrets are imported
- Start working with the dex
- Update domain model
- Use cfogrady's blank character when not seen
- Cancel character upload in case the app database does not contain the card for it (otherwise, the watch will delete the character)
- Export character data (in case of any app issues or changing phones)
(Also added some more icons)
Woo
Merge pull request #7 from nacabaro/dim/read_cards
Read cards