Skip to content

chore!: Add support for openauthenticator-app/backend and UI redesign.#42

Merged
Skyost merged 43 commits intomainfrom
custom-backend
Apr 23, 2026
Merged

chore!: Add support for openauthenticator-app/backend and UI redesign.#42
Skyost merged 43 commits intomainfrom
custom-backend

Conversation

@Skyost
Copy link
Copy Markdown
Member

@Skyost Skyost commented Apr 17, 2026

Summary

This PR introduces a major overhaul of OpenAuthenticator, both functionally and visually.

Until now, the app supported two storage modes:

  • local storage;
  • online storage powered by Firebase.

With this PR, the app moves to a local-first model :
*data is now stored locally by default, as previously ;

On top of that, the app UI has been completely redesigned :

  • the previous Material Design-based interface has been replaced ;
  • the application now relies on ForUI, which provides a more consistent cross-platform experience.

Documentation has also been moved out of this repository into a separate repository.

Main changes

Local-first architecture

The app no longer revolves around a dual local / Firebase storage model.

Instead :

  • local storage (powered by Drift) is now the primary source of truth ;
  • remote synchronization is an additional capability rather than the core storage model ;
  • persistence, synchronization, and related flows have been reworked accordingly.

Self-hostable backend synchronization

Firebase is no longer used as the main online storage backend.

This PR introduces a new synchronization model based on a dedicated open-source backend that can be self-hosted. This makes the project less tied to Firebase and gives more flexibility over how and where sync is deployed.

Migration from the previous model

Because this change is structural, this PR also includes the work needed to migrate from the previous architecture :

  • migration logic for existing users;
  • compatibility work around previous storage behavior;
  • updates to backup, sync, and data transition flows.

Full UI redesign with ForUI

The application no longer uses Material Design as its main UI foundation.

Instead, the UI has been reworked around ForUI in order to better fit a cross-platform product. This includes :

  • redesigned screens and components;
  • a more platform-agnostic visual language;
  • a more consistent experience across mobile and desktop platforms.

This is not just a visual polish pass : it is a full UI refactor.

Documentation moved to a separate repository

The docs directory has been removed from this repository.

Project documentation now lives in a separate repository, which helps :

  • keep this repository focused on the application itself ;
  • decouple app and documentation lifecycles ;
  • simplify maintenance going forward.

Review notes

This PR is fairly large and may be easier to review by looking at it in separate parts :

  • storage and synchronization architecture ;
  • migration flows ;
  • backend integration ;
  • UI refactor / ForUI migration ;
  • repository cleanup and documentation move.

What's next ?

Once merged, this repository will be moved to https://github.com/openauthenticator-app/openauthenticator. The development will continue there.

Fixes #36. Fixes #37. Fixes #39. Fixes #41.

@Skyost Skyost self-assigned this Apr 17, 2026
@Skyost Skyost added the enhancement New feature or request label Apr 17, 2026
@Skyost Skyost linked an issue Apr 17, 2026 that may be closed by this pull request
@Skyost Skyost changed the title Migrate the app to use a custom backend chore: Add support for openauthenticator-app/backend and UI redesign. Apr 17, 2026
@Skyost Skyost changed the title chore: Add support for openauthenticator-app/backend and UI redesign. chore!: Add support for openauthenticator-app/backend and UI redesign. Apr 21, 2026
@Skyost Skyost merged commit d240a55 into main Apr 23, 2026
1 check passed
@Skyost Skyost deleted the custom-backend branch April 23, 2026 23:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

1 participant