diff --git a/apps/frontend/src/locales/en-US/index.json b/apps/frontend/src/locales/en-US/index.json index 209c2d61..18352895 100644 --- a/apps/frontend/src/locales/en-US/index.json +++ b/apps/frontend/src/locales/en-US/index.json @@ -2,6 +2,195 @@ "admin.billing.error.not-found": { "message": "User not found" }, + "app-marketing.download.description": { + "message": "Our desktop app is available across all platforms, choose your desired version." + }, + "app-marketing.download.download-appimage": { + "message": "Download the AppImage" + }, + "app-marketing.download.download-beta": { + "message": "Download the beta" + }, + "app-marketing.download.download-deb": { + "message": "Download the DEB" + }, + "app-marketing.download.download-rpm": { + "message": "Download the RPM" + }, + "app-marketing.download.linux": { + "message": "Linux" + }, + "app-marketing.download.linux-disclaimer": { + "message": "The Linux versions of Modrinth App are known to have issues on certain systems and configurations. If Modrinth App is unstable on your system, we encourage you to try other apps like Prism Launcher to easily install Modrinth content." + }, + "app-marketing.download.mac": { + "message": "Mac" + }, + "app-marketing.download.options-title": { + "message": "Download options" + }, + "app-marketing.download.terms": { + "message": "By downloading Modrinth App you agree to our Terms and Privacy Policy." + }, + "app-marketing.download.third-party-packages": { + "message": "Third-party packages" + }, + "app-marketing.download.title": { + "message": "Download Modrinth App (Beta)" + }, + "app-marketing.download.windows": { + "message": "Windows" + }, + "app-marketing.features.follow.description": { + "message": "Save content you love and receive updates with one click." + }, + "app-marketing.features.follow.title": { + "message": "Follow projects" + }, + "app-marketing.features.importing.description": { + "message": "Import all your favorite profiles from the launcher you were using before, and get started with Modrinth App in seconds!" + }, + "app-marketing.features.importing.gdlauncher-alt": { + "message": "GDLauncher" + }, + "app-marketing.features.importing.multimc-alt": { + "message": "MultiMC" + }, + "app-marketing.features.importing.title": { + "message": "Profile importing" + }, + "app-marketing.features.mod-management.actions": { + "message": "Actions" + }, + "app-marketing.features.mod-management.byAuthor": { + "message": "by {author}" + }, + "app-marketing.features.mod-management.description": { + "message": "Modrinth makes it easy to manage all your mods in one place. You can install, uninstall, and update mods with a single click." + }, + "app-marketing.features.mod-management.installed-mods": { + "message": "Installed mods" + }, + "app-marketing.features.mod-management.name": { + "message": "Name" + }, + "app-marketing.features.mod-management.search-mods": { + "message": "Search mods" + }, + "app-marketing.features.mod-management.title": { + "message": "Mod management" + }, + "app-marketing.features.mod-management.version": { + "message": "Version" + }, + "app-marketing.features.offline.description": { + "message": "Play your mods, whether you are connected to the internet, or not." + }, + "app-marketing.features.offline.title": { + "message": "Offline mode" + }, + "app-marketing.features.open-source.description": { + "message": "Modrinth's launcher is fully open source. You can view the source code on our GitHub!" + }, + "app-marketing.features.open-source.title": { + "message": "Open source" + }, + "app-marketing.features.performance.activity-monitor": { + "message": "Activity monitor" + }, + "app-marketing.features.performance.cpu-percent": { + "message": "% CPU" + }, + "app-marketing.features.performance.description": { + "message": "Modrinth App performs better than many of the leading mod managers, using just 150mb of RAM!" + }, + "app-marketing.features.performance.discord": { + "message": "Discord" + }, + "app-marketing.features.performance.good-performance": { + "message": "Good performance" + }, + "app-marketing.features.performance.google-chrome": { + "message": "Google Chrome" + }, + "app-marketing.features.performance.infinite-mb": { + "message": "∞ MB" + }, + "app-marketing.features.performance.infinite-times-infinite-mb": { + "message": "∞ * ∞ MB" + }, + "app-marketing.features.performance.less-than-150mb": { + "message": "< 150 MB" + }, + "app-marketing.features.performance.modrinth-app": { + "message": "Modrinth App" + }, + "app-marketing.features.performance.one-billion-percent": { + "message": "1 billion %" + }, + "app-marketing.features.performance.process-name": { + "message": "Process name" + }, + "app-marketing.features.performance.ram": { + "message": "RAM" + }, + "app-marketing.features.performance.small": { + "message": "Small" + }, + "app-marketing.features.performance.title": { + "message": "Performant" + }, + "app-marketing.features.play.description": { + "message": "Use Modrinth App to download and play with your favorite mods and modpacks." + }, + "app-marketing.features.play.title": { + "message": "Play with your favorite mods" + }, + "app-marketing.features.sharing.description": { + "message": "Build, share, and play modpacks with any of the thousands of mods and modpacks hosted here on Modrinth." + }, + "app-marketing.features.sharing.modpack": { + "message": "Modpack" + }, + "app-marketing.features.sharing.share-button": { + "message": "Share" + }, + "app-marketing.features.sharing.title": { + "message": "Share modpacks" + }, + "app-marketing.features.unlike-any-launcher": { + "message": "Unlike any launcher" + }, + "app-marketing.features.website.description": { + "message": "Modrinth App is fully integrated with the website, so you can access all your favorite projects from the app!" + }, + "app-marketing.features.website.title": { + "message": "Website integration" + }, + "app-marketing.features.youve-used-before": { + "message": "you've used before" + }, + "app-marketing.hero.app-screenshot-alt": { + "message": "Screenshot of Modrinth App with a Cobblemon instance opened to the 'Content' page." + }, + "app-marketing.hero.description": { + "message": "Modrinth App is a unique, open source launcher that allows you to play your favorite mods, and keep them up to date, all in one neat little package." + }, + "app-marketing.hero.download-button": { + "message": "Download Modrinth App" + }, + "app-marketing.hero.download-modrinth-app": { + "message": "Download Modrinth App" + }, + "app-marketing.hero.download-modrinth-app-for-os": { + "message": "Download Modrinth App for {os}" + }, + "app-marketing.hero.minecraft-screenshot-alt": { + "message": "Screenshot of the Cobblemon instance's main menu screen." + }, + "app-marketing.hero.more-download-options": { + "message": "More Download Options" + }, "auth.authorize.action.authorize": { "message": "Authorize" }, @@ -396,7 +585,7 @@ "message": "Find what you want, quickly and easily" }, "landing.heading.the-place-for-minecraft": { - "message": "The place for Minecraft " + "message": "The place for Minecraft {content}" }, "landing.heading.the-place-for-minecraft.data-packs": { "message": "data packs" diff --git a/apps/frontend/src/pages/app.vue b/apps/frontend/src/pages/app.vue index a016a2fa..5283444b 100644 --- a/apps/frontend/src/pages/app.vue +++ b/apps/frontend/src/pages/app.vue @@ -8,7 +8,9 @@ import { SendIcon, TrashIcon, } from '@modrinth/assets' -import { Avatar, Badge, Checkbox } from '@modrinth/ui' +import { Avatar, Badge, Checkbox, commonMessages } from '@modrinth/ui' +import { defineMessages, useVIntl } from '@vintl/vintl' +import { IntlFormatted } from '@vintl/vintl/components' import ATLauncher from '~/assets/images/external/atlauncher.svg?component' import CurseForge from '~/assets/images/external/curseforge.svg?component' @@ -32,7 +34,7 @@ interface LauncherUpdates { type OSType = 'Mac' | 'Windows' | 'Linux' | null const downloadWindows = ref(null) -const downloadLinux = ref(null) +const downloadMac = ref(null) const downloadSection = ref(null) const windowsLink = ref(null) @@ -103,14 +105,87 @@ const os = computed(() => { return null } }) + +const osName = computed(() => { + switch (os.value) { + case 'Mac': + return formatMessage(messages.mac) + case 'Windows': + return formatMessage(messages.windows) + case 'Linux': + return formatMessage(messages.linux) + } + return 'unknown' +}) + +const modManagementData = [ + { + id: 'P7dR8mSH', // Todo: fetch name + author + icon from api + name: 'Fabric API', + author: 'modmuss50', + version: '0.86.1+1.20.1', + iconUrl: 'https://cdn.modrinth.com/data/P7dR8mSH/icon.png', + }, + { + id: 'AANobbMI', + name: 'Sodium', + author: 'jellysquid3', + version: 'mc1.20.1-0.5.0', + iconUrl: 'https://cdn.modrinth.com/data/AANobbMI/icon.png', + }, + { + id: 'YL57xq9U', + name: 'Iris Shaders', + author: 'coderbot', + version: '1.6.5+1.20.1', + iconUrl: 'https://cdn.modrinth.com/data/YL57xq9U/dc558eece920db435f9823ce86de0c4cde89800b.png', + }, + { + id: 'gvQqBUqZ', + name: 'Lithium', + author: 'jellysquid3', + version: 'mc1.20.1-0.11.2', + iconUrl: 'https://cdn.modrinth.com/data/gvQqBUqZ/icon.png', + }, + { + id: 'mOgUt4GM', + name: 'Mod Menu', + author: 'Prospector', + version: '7.2.1', + iconUrl: + 'https://cdn.modrinth.com/data/mOgUt4GM/1bfe2006b38340e9d064700e41adf84a8abb1bd4_96.webp', + }, + { + id: '9s6osm5g', + name: 'Cloth Config API', + author: 'shedaniel', + version: '11.1.106+fabric', + iconUrl: 'https://cdn.modrinth.com/data/9s6osm5g/icon.png', + }, + { + id: 'lhGA9TYQ', + name: 'Architectury API', + author: 'shedaniel', + version: '9.1.12+fabric', + iconUrl: 'https://cdn.modrinth.com/data/lhGA9TYQ/icon.png', + }, + { + id: 'nrJ2NpD0', + name: 'Craftify', + author: 'ThatGravyBoat', + version: '8.5.2023', + iconUrl: 'https://cdn.modrinth.com/data/nrJ2NpD0/4f21214db060ed4542b1f3983c4113d293480a1b.webp', + }, +] + const downloadLauncher = computed(() => { if (os.value === 'Windows') { return () => { downloadWindows.value?.click() } - } else if (os.value === 'Linux') { + } else if (os.value === 'Mac') { return () => { - downloadLinux.value?.click() + downloadMac.value?.click() } } else { return () => { @@ -148,9 +223,276 @@ const scrollToSection = () => { }) } -const title = 'Download the Modrinth App!' +const { formatMessage } = useVIntl() + +const messages = defineMessages({ + downloadModrinthApp: { + id: 'app-marketing.hero.download-modrinth-app', + defaultMessage: 'Download Modrinth App', + }, + downloadModrinthAppForOs: { + id: 'app-marketing.hero.download-modrinth-app-for-os', + defaultMessage: 'Download Modrinth App for {os}', + }, + description: { + id: 'app-marketing.hero.description', + defaultMessage: + 'Modrinth App is a unique, open source launcher that allows you to play your favorite mods, and keep them up to date, all in one neat little package.', + }, + downloadModrinthAppButton: { + id: 'app-marketing.hero.download-button', + defaultMessage: 'Download Modrinth App', + }, + moreDownloadOptions: { + id: 'app-marketing.hero.more-download-options', + defaultMessage: 'More Download Options', + }, + unlikeAnyLauncher: { + id: 'app-marketing.features.unlike-any-launcher', + defaultMessage: 'Unlike any launcher', + }, + youveUsedBefore: { + id: 'app-marketing.features.youve-used-before', + defaultMessage: "you've used before", + }, + installedMods: { + id: 'app-marketing.features.mod-management.installed-mods', + defaultMessage: 'Installed mods', + }, + searchMods: { + id: 'app-marketing.features.mod-management.search-mods', + defaultMessage: 'Search mods', + }, + name: { + id: 'app-marketing.features.mod-management.name', + defaultMessage: 'Name', + }, + version: { + id: 'app-marketing.features.mod-management.version', + defaultMessage: 'Version', + }, + actions: { + id: 'app-marketing.features.mod-management.actions', + defaultMessage: 'Actions', + }, + byAuthor: { + id: 'app-marketing.features.mod-management.byAuthor', + defaultMessage: 'by {author}', + }, + modManagement: { + id: 'app-marketing.features.mod-management.title', + defaultMessage: 'Mod management', + }, + modManagementDescription: { + id: 'app-marketing.features.mod-management.description', + defaultMessage: + 'Modrinth makes it easy to manage all your mods in one place. You can install, uninstall, and update mods with a single click.', + }, + playWithFavoriteMods: { + id: 'app-marketing.features.play.title', + defaultMessage: 'Play with your favorite mods', + }, + playWithFavoriteModsDescription: { + id: 'app-marketing.features.play.description', + defaultMessage: 'Use Modrinth App to download and play with your favorite mods and modpacks.', + }, + shareModpacks: { + id: 'app-marketing.features.sharing.title', + defaultMessage: 'Share modpacks', + }, + shareModpacksDescription: { + id: 'app-marketing.features.sharing.description', + defaultMessage: + 'Build, share, and play modpacks with any of the thousands of mods and modpacks hosted here on Modrinth.', + }, + share: { + id: 'app-marketing.features.sharing.share-button', + defaultMessage: 'Share', + }, + modpack: { + id: 'app-marketing.features.sharing.modpack', + defaultMessage: 'Modpack', + }, + activityMonitor: { + id: 'app-marketing.features.performance.activity-monitor', + defaultMessage: 'Activity monitor', + }, + goodPerformance: { + id: 'app-marketing.features.performance.good-performance', + defaultMessage: 'Good performance', + }, + processName: { + id: 'app-marketing.features.performance.process-name', + defaultMessage: 'Process name', + }, + cpuPercent: { + id: 'app-marketing.features.performance.cpu-percent', + defaultMessage: '% CPU', + }, + ram: { + id: 'app-marketing.features.performance.ram', + defaultMessage: 'RAM', + }, + modrinthApp: { + id: 'app-marketing.features.performance.modrinth-app', + defaultMessage: 'Modrinth App', + }, + small: { + id: 'app-marketing.features.performance.small', + defaultMessage: 'Small', + }, + lessThan150MB: { + id: 'app-marketing.features.performance.less-than-150mb', + defaultMessage: '< 150 MB', + }, + googleChrome: { + id: 'app-marketing.features.performance.google-chrome', + defaultMessage: 'Google Chrome', + }, + discord: { + id: 'app-marketing.features.performance.discord', + defaultMessage: 'Discord', + }, + infiniteMB: { + id: 'app-marketing.features.performance.infinite-mb', + defaultMessage: '∞ MB', + }, + oneBillionPercent: { + id: 'app-marketing.features.performance.one-billion-percent', + defaultMessage: '1 billion %', + }, + infiniteTimesInfiniteMB: { + id: 'app-marketing.features.performance.infinite-times-infinite-mb', + defaultMessage: '∞ * ∞ MB', + }, + performant: { + id: 'app-marketing.features.performance.title', + defaultMessage: 'Performant', + }, + performantDescription: { + id: 'app-marketing.features.performance.description', + defaultMessage: + 'Modrinth App performs better than many of the leading mod managers, using just 150mb of RAM!', + }, + websiteIntegration: { + id: 'app-marketing.features.website.title', + defaultMessage: 'Website integration', + }, + websiteIntegrationDescription: { + id: 'app-marketing.features.website.description', + defaultMessage: + 'Modrinth App is fully integrated with the website, so you can access all your favorite projects from the app!', + }, + profileImporting: { + id: 'app-marketing.features.importing.title', + defaultMessage: 'Profile importing', + }, + profileImportingDescription: { + id: 'app-marketing.features.importing.description', + defaultMessage: + 'Import all your favorite profiles from the launcher you were using before, and get started with Modrinth App in seconds!', + }, + openSource: { + id: 'app-marketing.features.open-source.title', + defaultMessage: 'Open source', + }, + openSourceDescription: { + id: 'app-marketing.features.open-source.description', + defaultMessage: + "Modrinth's launcher is fully open source. You can view the source code on our GitHub!", + }, + offlineMode: { + id: 'app-marketing.features.offline.title', + defaultMessage: 'Offline mode', + }, + offlineModeDescription: { + id: 'app-marketing.features.offline.description', + defaultMessage: 'Play your mods, whether you are connected to the internet, or not.', + }, + followProjects: { + id: 'app-marketing.features.follow.title', + defaultMessage: 'Follow projects', + }, + followProjectsDescription: { + id: 'app-marketing.features.follow.description', + defaultMessage: 'Save content you love and receive updates with one click.', + }, + downloadOptions: { + id: 'app-marketing.download.options-title', + defaultMessage: 'Download options', + }, + downloadModrinthAppBeta: { + id: 'app-marketing.download.title', + defaultMessage: 'Download Modrinth App (Beta)', + }, + downloadDescription: { + id: 'app-marketing.download.description', + defaultMessage: + 'Our desktop app is available across all platforms, choose your desired version.', + }, + windows: { + id: 'app-marketing.download.windows', + defaultMessage: 'Windows', + }, + mac: { + id: 'app-marketing.download.mac', + defaultMessage: 'Mac', + }, + linux: { + id: 'app-marketing.download.linux', + defaultMessage: 'Linux', + }, + downloadTheBeta: { + id: 'app-marketing.download.download-beta', + defaultMessage: 'Download the beta', + }, + downloadTheAppImage: { + id: 'app-marketing.download.download-appimage', + defaultMessage: 'Download the AppImage', + }, + downloadTheDEB: { + id: 'app-marketing.download.download-deb', + defaultMessage: 'Download the DEB', + }, + downloadTheRPM: { + id: 'app-marketing.download.download-rpm', + defaultMessage: 'Download the RPM', + }, + thirdPartyPackages: { + id: 'app-marketing.download.third-party-packages', + defaultMessage: 'Third-party packages', + }, + downloadTerms: { + id: 'app-marketing.download.terms', + defaultMessage: + 'By downloading Modrinth App you agree to our Terms and Privacy Policy.', + }, + linuxDisclaimer: { + id: 'app-marketing.download.linux-disclaimer', + defaultMessage: + 'The Linux versions of Modrinth App are known to have issues on certain systems and configurations. If Modrinth App is unstable on your system, we encourage you to try other apps like Prism Launcher to easily install Modrinth content.', + }, + appScreenshotAlt: { + id: 'app-marketing.hero.app-screenshot-alt', + defaultMessage: `Screenshot of Modrinth App with a Cobblemon instance opened to the 'Content' page.`, + }, + minecraftScreenshotAlt: { + id: 'app-marketing.hero.minecraft-screenshot-alt', + defaultMessage: `Screenshot of the Cobblemon instance's main menu screen.`, + }, + gdlauncherAlt: { + id: 'app-marketing.features.importing.gdlauncher-alt', + defaultMessage: 'GDLauncher', + }, + multimcAlt: { + id: 'app-marketing.features.importing.multimc-alt', + defaultMessage: 'MultiMC', + }, +}) + +const title = 'Download Modrinth App!' const description = - 'The Modrinth App is a unique, open source launcher that allows you to play your favorite mods, and keep them up to date, all in one neat little package.' + 'Modrinth App is a unique, open source launcher that allows you to play your favorite mods, and keep them up to date, all in one neat little package.' useSeoMeta({ title, @@ -163,14 +505,20 @@ useSeoMeta({