mirror of
https://github.com/handsomezhuzhu/AeroStart.git
synced 2026-02-20 20:10:15 +00:00
✨ feat: initialize AeroStart browser start page project
Implement a modern, customizable browser start page with comprehensive features: - Multi-theme support with 8 preset color schemes - Custom wallpaper system supporting images and videos with multiple fit modes - Integrated search functionality with 5 major search engines (Google, Baidu, Bing, DuckDuckGo, Bilibili) - Real-time clock component with 12/24 hour format options - Dynamic background blur effect during search for enhanced focus - Complete i18n system with English and Chinese language support - Responsive design with smooth animations and transitions - Local storage integration for persistent user preferences - Context menu system for quick settings access - Toast notification system for user feedback - Error boundary for robust error handling Tech Stack: - React 19 with TypeScript - Vite 6 for build tooling - Tailwind CSS for styling - Local storage for data persistence Project Structure: - Core components: Clock, SearchBox, SettingsModal, ThemeSettings, WallpaperManager - Utility modules: storage management, search suggestions - Context providers: Toast notifications, i18n - Type definitions and constants configuration 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
95
i18n/locales/en.ts
Normal file
95
i18n/locales/en.ts
Normal file
@@ -0,0 +1,95 @@
|
||||
import { Translation } from '../types';
|
||||
|
||||
export const en: Translation = {
|
||||
// Common
|
||||
settings: 'Settings',
|
||||
appearance: 'Appearance',
|
||||
searchEngines: 'Search Engines',
|
||||
|
||||
// Theme Settings
|
||||
themeColor: 'Theme Color',
|
||||
showSeconds: 'Show Seconds',
|
||||
use24HourFormat: '24-Hour Format',
|
||||
maskBlurEffect: 'Mask Blur Effect',
|
||||
searchHistory: 'Search History',
|
||||
backgroundBlur: 'Background Blur',
|
||||
searchBoxOpacity: 'Search Box Opacity',
|
||||
|
||||
// Wallpaper Settings
|
||||
wallpaperSettings: 'Wallpaper Settings',
|
||||
uploadImageVideo: 'Upload Image/Video',
|
||||
enterImageVideoUrl: 'Enter image or video URL...',
|
||||
apply: 'Apply',
|
||||
cover: 'Cover',
|
||||
contain: 'Contain',
|
||||
fill: 'Fill',
|
||||
repeat: 'Repeat',
|
||||
center: 'Center',
|
||||
deleteWallpaper: 'Delete wallpaper',
|
||||
|
||||
// Search Engine Manager
|
||||
addCustomEngine: 'Add Custom Engine',
|
||||
editSearchEngine: 'Edit Search Engine',
|
||||
name: 'Name',
|
||||
searchUrl: 'Search URL (use %s or append directly)',
|
||||
svgIconCode: 'SVG Icon Code',
|
||||
optional: 'optional',
|
||||
preview: 'Preview',
|
||||
cancel: 'Cancel',
|
||||
save: 'Save',
|
||||
add: 'Add',
|
||||
current: 'Current',
|
||||
setDefault: 'Set Default',
|
||||
edit: 'Edit',
|
||||
delete: 'Delete',
|
||||
|
||||
// Search Box
|
||||
search: 'Search',
|
||||
searchOn: 'Search on',
|
||||
recentSearches: 'Recent Searches',
|
||||
clearHistory: 'Clear History',
|
||||
|
||||
// Context Menu
|
||||
copy: 'Copy',
|
||||
cut: 'Cut',
|
||||
paste: 'Paste',
|
||||
|
||||
// Error Boundary
|
||||
somethingWentWrong: 'Something went wrong',
|
||||
errorMessage: 'The application encountered an unexpected error. Please try refreshing the page or resetting the app.',
|
||||
retry: 'Retry',
|
||||
refreshPage: 'Refresh Page',
|
||||
|
||||
// Toast Messages
|
||||
searchEngineDeleted: 'Search engine deleted',
|
||||
searchEngineUpdated: 'Search engine updated successfully',
|
||||
newSearchEngineAdded: 'New search engine added',
|
||||
duplicateEngineName: 'This search engine name already exists, please use a different name',
|
||||
customWallpaperApplied: 'Custom wallpaper applied',
|
||||
wallpaperUploaded: 'Wallpaper uploaded and applied successfully',
|
||||
wallpaperDeleted: 'Custom wallpaper deleted',
|
||||
fileSizeExceeded: 'File size cannot exceed 3.5MB. Consider using URL method instead.',
|
||||
unsupportedFileType: 'Unsupported file type. Only supports: JPEG, PNG, GIF, WebP, SVG, MP4, WebM, OGG',
|
||||
fileContentMismatch: 'File content does not match type',
|
||||
storageFull: 'Insufficient storage space! File too large to save. Consider using URL method.',
|
||||
invalidUrlFormat: 'Invalid URL format',
|
||||
unsupportedProtocol: 'Only HTTP or HTTPS protocol links are supported',
|
||||
invalidSearchUrl: 'Generated search URL is invalid',
|
||||
copyFailed: 'Copy failed',
|
||||
cutFailed: 'Cut failed',
|
||||
cannotReadClipboard: 'Cannot read clipboard',
|
||||
|
||||
// Clock
|
||||
monday: 'Monday',
|
||||
tuesday: 'Tuesday',
|
||||
wednesday: 'Wednesday',
|
||||
thursday: 'Thursday',
|
||||
friday: 'Friday',
|
||||
saturday: 'Saturday',
|
||||
sunday: 'Sunday',
|
||||
|
||||
// Language
|
||||
language: 'Language',
|
||||
english: 'English',
|
||||
chinese: '简体中文',
|
||||
};
|
||||
Reference in New Issue
Block a user