A multilingual maintenance page for Ghost Land services built with Nuxt.js and Vuetify.
- 🌍 Internationalization (i18n) support with 7 languages
- 🌓 Automatic dark/light theme based on system preference
- 📊 Real-time maintenance progress indicator
- 📱 Fully responsive Material Design
- ⚡ Dynamic configuration for maintenance periods
- 🔗 Centralized link management
# install dependencies
$ yarn install
# serve with hot reload at localhost:3000
$ yarn dev
# build for production and launch server
$ yarn build
$ yarn start
# generate static project
$ yarn generate
├── assets/ # Uncompiled assets
├── components/ # Vue components
├── config/
│ ├── links.js # Social and external links
│ └── maintenance.js # Maintenance configuration
├── layouts/
│ └── default.vue # Default layout with theme toggle
├── locales/ # Translation files
│ ├── en.js # English
│ ├── fr.js # French
│ ├── es.js # Spanish
│ ├── de.js # German
│ ├── ja.js # Japanese
│ ├── pt.js # Portuguese
│ └── ko.js # Korean
├── pages/
│ └── index.vue # Main maintenance page
└── static/ # Static files
└── favicon.ico # Site favicon
Configure maintenance dates in config/maintenance.js
:
export default {
startDate: '2024-01-15T00:00:00Z',
endDate: '2024-01-20T00:00:00Z'
}
Manage all external links in config/links.js
:
export default {
social: {
status: 'https://status.ghostland.at/',
community: 'https://social.ghostland.at/',
wiki: 'https://wiki.ghosteshop.com/',
donate: 'https://ko-fi.com/ghostland'
}
}
- Automatically detects system theme preference
- Manual toggle with persistent preference
- Smooth transitions between themes
- Supports 7 languages out of the box
- Easy language switching via toolbar
- Locale-aware date formatting
- Real-time maintenance progress tracking
- Automatic updates
- Visual progress bar with percentage
This project is licensed under the GNU General Public License v3.0.
Copyright © 2020-2025 Ghost Land Team