AuthSteem Upgraded: Vue 2 → Vue 3 Migration

in Steem Devlast month

image.png

Hi everyone, a few days go I have completed development and careful refactoring, AuthSteem has now been fully upgraded from Vue 2.6 to Vue 3.5 — with complete compatibility across Web, Chrome Extension, and Electron.
This upgrade brings modern performance, long-term stability, and a cleaner architecture for future development.


Framework & Dependency Upgrades

A full stack refresh was completed across the project:

Core Libraries Updated

  • Vue → 3.5
  • Vue Router → v4
  • Vuex → v4
  • Vue i18n → v10

Build Tools & Testing

  • @vue/cli → v5 with Webpack 5
  • Updated Jest & ESLint
  • Updated @vue/test-utils for Vue 3 support

Electron Upgrade

  • Electron upgraded from v9 → v35
    ✔ Better performance
    ✔ Stronger security sandbox
    ✔ Continued compatibility with modern Chromium versions

Styling & Build Fixes

  • Replaced node-sass with fast & modern Dart Sass
  • Updated CSS loaders
  • Added browser polyfills to support Node-oriented modules in the web version

Codebase Migration to Vue 3

The entire codebase was modernised while keeping the Options API for developer familiarity.

Key Modernizations

  • Replaced new Vue()createApp()
  • Updated router & store to createRouter() and createStore()
  • Replaced Vue.prototypeapp.config.globalProperties
  • Removed Vue 2–era reactivity hacks (no more Vue.set())
  • Updated all modules and views for Vue 3 compatibility

This ensures the app behaves exactly the same across all platforms, with a cleaner internal architecture.


Bug Fix: Chrome Extension OAuth

A missing check inside LoginRequest.vue caused a Chrome extension OAuth validation issue. So I changed it.

This ensures redirect URI validation is skipped correctly inside the Chrome extension, restoring proper OAuth flow.


This upgrade brings AuthSteem into the modern Vue ecosystem with improved performance, long-term security, and cleaner maintainability. All platforms — Web, Chrome Extension, and Electron — now run smoothly using the latest technologies.

The PR has been merged with the master branch successfully. As I haven't used Docker, the workflow needs some code changes in yml files. And the code is completely fine.
https://github.com/steemfans/authsteem/pull/4

Best regards
@Dhaka.witness
Witness Rank: 25th
Thanks for supporting us 💖

Our other contributions:

We are doing multiple things. Here are some of the track records:

  1. SteemBlocks - Advanced Steem Blockchain Explorer and Analytics Platform.
    https://steemblocks.com/

  2. SteemStats: A powerful multifunctional Discord bot, it's the most featured and largest Discord bot based on the Steem blockchain ever created.
    https://discord.com/oauth2/authorize?client_id=1276922336842612777

  3. Steem Burn Pool: A non-profit project aimed at serving the investors and volunteer participants who are interested in burning STEEM.
    https://burn.steemblocks.com/

Also, various tools and open-source work:

Fixing official Steem.com UI UX
https://github.com/steemit/steem.com/pull/2

Steem Websocket Bridge. https://github.com/Steemblocks/Steem-WebSocket-Bridge-v2
Witness Missed Block Alert tool. https://github.com/Steemblocks/Steem-MissedBlocks-Telegram-Bot

Seed Node: 1. seed2.dhakawitness.com:2001, 2. seed.dhakawitness.com:2001
WbSocket: https://dhakawitness.com/

and some more small tools you might find in our GitHub Profile
https://github.com/Steemblocks