diff --git a/src/i18n.js b/src/i18n.js
index c60573c..8135a40 100644
--- a/src/i18n.js
+++ b/src/i18n.js
@@ -1,26 +1,17 @@
-import Vue from 'vue';
-import VueI18n from 'vue-i18n';
+import { createI18n } from 'vue-i18n';
 
-Vue.use(VueI18n);
+import en_us from './locales/en-US.json';
+import ru_ru from './locales/ru-RU.json';
 
 function loadLocaleMessages() {
-  const locales = require.context(
-    './locales',
-    true,
-    /[A-Za-z0-9-_,\s]+\.json$/i,
-  );
-  const messages = {};
-  locales.keys().forEach((key) => {
-    const matched = key.match(/([A-Za-z0-9-_]+)\./i);
-    if (matched && matched.length > 1) {
-      const locale = matched[1];
-      messages[locale] = locales(key);
-    }
-  });
+  const messages = {
+    'en-US': en_us,
+    'ru-RU': ru_ru,
+  };
   return messages;
 }
 
-export default new VueI18n({
+const i18n = createI18n({
   // Get default locale from local storage
   locale: window.localStorage.getItem('storedLanguage'),
   // Locales that don't exist will fallback to English
@@ -29,4 +20,8 @@
   // Silent fallback suppresses console warnings when using fallback
   silentFallbackWarn: true,
   messages: loadLocaleMessages(),
+  globalInjection: false,
+  legacy: true,
 });
+
+export default i18n;
