v.0.16.0 Alpha - MVP version!
Highlights
Features
- Premium subscriptions and checkout: added Stripe-backed subscriptions, checkout and post-checkout pages, sandbox/test-mode messaging, and admin tooling for subscription management.
- Support mode and task help: introduced modal-driven support flows, task-support guidance, improved activity input flows, and timer support for guided task starts.
- Account and player improvements: added inline player-name editing with safer validation, account data download, account deletion, login streak tracking, timezone support, and richer account UI.
- Activity updates: improved current-activity displays and timelines, and added more gameplay/state data to the app UI.
Fixes and UX improvements
- More resilient player handling: decoupled players from characters so the app works cleanly even when a player has no active linked character.
- Modal and navigation polish: fixed support modal interactions, improved button and infobar presentation, and cleaned up several navigation/account UI flows.
- Security and validation hardening: integrated Cloudflare Turnstile for registration, tightened error-handling in sensitive paths, and improved websocket authentication/connection behavior.
- Payments and production fixes: corrected annual/monthly plan handling, upgraded payment views, and applied several deployment/runtime fixes for Render and production configuration.
Developer experience and quality
- Testing and quality tooling: added React unit tests with Vitest, accessibility test coverage, mypy type-checking, improved logging/metrics, and Docker/Copilot setup guidance.
- Deployment and environment updates: refreshed Docker/devcontainer setup, environment handling, workflow configuration, and branch CI/CD support.
- Dependency refresh: updated Django and a broad set of frontend/backend dependencies and security-related packages.
Full changelog
Click to expand
- Many tweaks by @gaidheal1 in #145
- fix: downgrade some package versions by @gaidheal1 in #146
- New changes, old bug by @gaidheal1 in #148
- fix: change session engine to cache, django->4.2.26 by @gaidheal1 in #150
- Updating several email things by @gaidheal1 in #153
- Fix fieldErrors by @gaidheal1 in #154
- Changed build number to stored text file by @gaidheal1 in #155
- Upgrade/django5 by @gaidheal1 in #157
- New interface, who dis? by @gaidheal1 in #161
- Feature/unified UI - completing onboarding by @gaidheal1 in #162
- Big interface update by @gaidheal1 in #163
- Fixing db migrations by @gaidheal1 in #164
- Improving UI (char behaviour gen works too) by @gaidheal1 in #165
- Making it possible to create character behaviour instances in admin by @gaidheal1 in #166
- fix: making fields readonly so it workss by @gaidheal1 in #167
- UI consistency for pages by @gaidheal1 in #168
- Add playercharacterlink signals by @gaidheal1 in #169
- Rename Profile to Player across Django backend by @Copilot in #176
- Remove deprecated Django template views after React migration by @Copilot in #171
- build(deps-dev): bump vite from 7.0.0 to 7.1.5 in /frontend in the npm_and_yarn group across 1 directory by @dependabot[bot] in #134
- build(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #179
- Add Copilot instructions for repository context by @Copilot in #178
- Enhance Django logging with request tracing and specialized loggers by @Copilot in #175
- Fix page refresh race conditions and WebSocket reconnection by @Copilot in #174
- Consolidate SCSS with semantic aliases and reusable mixins by @Copilot in #173
- Add React unit testing infrastructure with Vitest and 90 component tests by @Copilot in #172
- build(deps): bump the pip group across 1 directory with 5 updates by @dependabot[bot] in #180
- Implement WCAG 2.1 AA accessibility compliance and automated testing by @Copilot in #181
- Add mypy type checking infrastructure with Django plugin support by @Copilot in #182
- [WIP] Refactor integration with GitHub Copilot features by @Copilot in #185
- Remove unused imports and fix incomplete Profile→Player rename in tests by @Copilot in #184
- Remove unused Player import from users tests by @Copilot in #183
- Major update by @gaidheal1 in #170
- Fix InconsistentMigrationHistory by reverting edited events.0001_initial by @Copilot in #186
- fix: rebuild React by @gaidheal1 in #188
- fix: reinstating buildNumber in bootstrapgamedata by @gaidheal1 in #189
- update development with staging fixes by @gaidheal1 in #190
- Fix FieldError from is_npc property being queried as database field by @Copilot in #191
- Add metrics dashboard for user engagement tracking by @Copilot in #194
- Feature/metrics dashboard by @gaidheal1 in #196
- Adjust migrations (might require resetting db) by @gaidheal1 in #197
- Locations and Docker by @gaidheal1 in #220
- chore(deps): bump django-allauth from 65.13.0 to 65.14.1 in the pip group across 1 directory by @dependabot[bot] in #222
- chore(deps): bump immutable from 5.1.3 to 5.1.5 in /frontend in the npm_and_yarn group across 1 directory by @dependabot[bot] in #221
- New infobar by @gaidheal1 in #223
- fix: remove 'link' from xpmod by @gaidheal1 in #224
- fix: remove 'link=' by @gaidheal1 in #225
- Adding in code deleted by earlier revert, and improving by @gaidheal1 in #226
- Integrate Cloudflare Turnstile and enhance user data management by @gaidheal1 in #227
- fix: remove incorrect REST_FRAMEWORK key by @gaidheal1 in #228
- fix: rename 'settings' method (caused serious Django indigestion) by @gaidheal1 in #229
- Give characters their birthdays back! by @gaidheal1 in #230
- chore(deps): bump pyopenssl from 25.3.0 to 26.0.0 in the pip group across 1 directory by @dependabot[bot] in #231
- Preparing for making production live by @gaidheal1 in #234
- chore(deps): bump pyasn1 from 0.6.2 to 0.6.3 in the pip group across 1 directory by @dependabot[bot] in #233
- chore(deps-dev): bump flatted from 3.3.3 to 3.4.2 in /frontend in the npm_and_yarn group across 1 directory by @dependabot[bot] in #232
- chore(deps): bump the npm_and_yarn group across 1 directory with 1 update by @dependabot[bot] in #238
- chore(deps-dev): bump happy-dom from 20.3.3 to 20.8.9 in /frontend in the npm_and_yarn group across 1 directory by @dependabot[bot] in #240
- chore(deps): bump requests from 2.32.5 to 2.33.0 in the pip group across 1 directory by @dependabot[bot] in #239
- chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #241
- Include 'main' branch in CodeQL and CI workflow triggers by @gaidheal1 in #242
- chore(deps): bump the pip group across 1 directory with 2 updates by @dependabot[bot] in #244
- Update Dockerfile for working devcontainer setup by @gaidheal1 in #246
- Feature/payments by @gaidheal1 in #247
- Payments update by @gaidheal1 in #248
- Payments - admin utilities by @gaidheal1 in #249
- Payments update by @gaidheal1 in #250
- Add copilot-setup-steps.yml to pre-configure Copilot agent environment by @Copilot in #254
- feat: modal-driven support/activity flow by @Copilot in #253
- Decouple players from characters for MVP operation without character links by @Copilot in #255
- chore(deps): bump cryptography from 46.0.6 to 46.0.7 in the pip group across 1 directory by @dependabot[bot] in #252
- chore(deps): bump vite from 7.3.1 to 7.3.2 in /frontend in the npm_and_yarn group across 1 directory by @dependabot[bot] in #251
- New feature: Task support by @gaidheal1 in #256
- chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot[bot] in #257
- MVP redesign by @gaidheal1 in #258
Full Changelog: v0.15.6...v0.16.0
New Contributors
- @Copilot made their first contribution in #176