Notechondria
Version: 0.1.10 Build Date: 2026-04-08T00:00
What's Changed
Social account binding and OAuth login rejection
-
Added
_BindOAuthMixin,BindGoogleApiView, andBindGithubApiViewbackend endpoints for authenticated users to link/switch/unlink their Google and GitHub accounts. -
Added
intentparameter (login/register) toGoogleOAuthSerializer,GitHubOAuthSerializer, and_get_or_create_oauth_user. Whenintent=loginand no matching account exists, returns 404 withcode: "not_registered". -
Added
listSocialAccounts,unlinkSocialAccount,bindGoogle, andbindGithubmethods to the client in all three frontend apps. -
Added
_ConnectedAccountsSectionwidget in settings for all three apps: shows Google/GitHub rows with Link/Switch/Unlink actions. -
Added "Or sign in with" Google/GitHub buttons in the
_AuthHublogin dialog across all three apps. -
OAuth callback handler now supports
intent=bindflow via SharedPreferences persistence, and shows a SnackBar when login is rejected for unregistered accounts.
Splash animation improvements
- Redesigned splash screen: cycle axis is now at the left center of the screen with radius spanning to the screen center.
- Cycle rotates so the active metabolite is always at the screen center (rightmost point of the arc).
- Increased all text sizes: metabolite labels 14-16pt (was 9-10pt), byproducts 13pt (was 8.5pt), center label 18pt (was 11pt).
- Nodes scale up: active 10-13px (was 6-8px), inactive 7px (was 4.5px).
- Smart label alignment: left-aligned on right side of arc, right-aligned on left side, center-aligned at top/bottom.
- Smooth edge fade for nodes entering/leaving the visible arc.
- App title and loading text moved to bottom-right overlay using LayoutBuilder for full-screen layout.
Slide-in animation for note view to editor
-
Note viewer dialog now uses
_showSlideInDialog(slide+fade) instead of defaultshowDialog(scale+fade), providing consistent slide animation when opening notes. - Increased slide distance from 8% to 30% of screen width for a more noticeable page-push effect.
- Transition from viewer to editor now has matching slide animations: viewer slides out while editor slides in from the right.
Files Changed
backend/creators/api.py-- Added _BindOAuthMixin, BindGoogleApiView, BindGithubApiView, intent parameter to OAuth flowbackend/notechondria/api_urls.py-- Added auth/bind/google/ and auth/bind/github/ URL routesfrontend/editor_app/lib/core/client.dart-- Added listSocialAccounts, unlinkSocialAccount, bindGoogle, bindGithub; updated loginWithGoogle/loginWithGithub with intent paramfrontend/editor_app/lib/core/helpers.dart-- Increased slide-in dialog offset from 0.08 to 0.3frontend/editor_app/lib/components/auth_dialogs.dart-- Added Google/GitHub sign-in buttons to _AuthHubfrontend/editor_app/lib/components/splash_screen.dart-- Redesigned: full-screen rotating cycle, larger text, axis at left centerfrontend/editor_app/lib/modules/settings.dart-- Added _ConnectedAccountsSection, social account management callbacksfrontend/editor_app/lib/modules/learner.dart-- Changed viewer to use _showSlideInDialogfrontend/editor_app/lib/app_shell.dart-- Added OAuth intent/bind flow, social account callbacks to settingsfrontend/planner_app/lib/core/client.dart-- Same client updates as editorfrontend/planner_app/lib/components/auth_dialogs.dart-- Added Google/GitHub sign-in buttonsfrontend/planner_app/lib/components/splash_screen.dart-- Same splash redesign as editorfrontend/planner_app/lib/modules/settings.dart-- Added _ConnectedAccountsSectionfrontend/planner_app/lib/app_shell.dart-- Added OAuth intent/bind flow, social account callbacksfrontend/portal_app/lib/core/client.dart-- Same client updates as editorfrontend/portal_app/lib/components/auth_dialogs.dart-- Added Google/GitHub sign-in buttonsfrontend/portal_app/lib/components/splash_screen.dart-- Same splash redesign as editorfrontend/portal_app/lib/modules/settings.dart-- Added _ConnectedAccountsSectionfrontend/portal_app/lib/app_shell.dart-- Added OAuth intent/bind flow, social account callbacksVERSION-- Bumped from 0.1.9 to 0.1.10sample.env-- Updated image tags to v0.1.10.localdocs/versions/0.1.10.md-- This version documentdocs/TASKS.md-- Marked completed items