-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
107 lines (88 loc) · 3.82 KB
/
index.html
File metadata and controls
107 lines (88 loc) · 3.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<!DOCTYPE html>
<html lang="en" class="dark">
<head>
<!--
=============================================================================
DREAM-E - HTML ENTRY POINT
=============================================================================
This is the single HTML page for our Single-Page Application (SPA).
HOW SPAs WORK:
Unlike traditional websites where each page is a separate HTML file,
SPAs load once and then JavaScript handles all the "page" changes.
When you navigate in Dream-E:
- The URL changes (e.g., /edit/project-123)
- JavaScript intercepts this
- The appropriate React components are rendered
- No full page reload happens!
This makes the app feel fast and native-like.
=============================================================================
-->
<!-- CHARACTER ENCODING: Use UTF-8 for all characters (emojis, special chars) -->
<meta charset="UTF-8" />
<!-- VIEWPORT: Make the page responsive on mobile devices -->
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- FAVICON: The small icon shown in browser tabs -->
<!-- You can replace this with your own icon in /public/favicon.ico -->
<link rel="icon" type="image/svg+xml" href="/logo.svg" />
<!-- PAGE TITLE: Shown in browser tabs and bookmarks -->
<title>Dream-E - Visual Story Editor</title>
<!-- META DESCRIPTION: For search engines -->
<meta name="description" content="Create interactive text adventures and RPGs with a visual node editor. No coding required." />
<!-- THEME COLOR: For mobile browsers (affects status bar on Android) -->
<meta name="theme-color" content="#1a1a2e" />
<!--
GOOGLE FONTS
We load fonts that match our design themes:
- Inter: Clean, modern UI font for the editor
- Cinzel: Elegant serif for Fantasy theme
- Merriweather: Readable serif for Fantasy body text
- Orbitron: Futuristic for Cyberpunk theme
- Roboto Mono: Monospace for Cyberpunk body
-->
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Cinzel:wght@400;600;700&family=Merriweather:wght@400;700&family=Orbitron:wght@400;500;700&family=Roboto+Mono:wght@400;500&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet" />
<!--
PREVENT FLASH OF UNSTYLED CONTENT (FOUC)
This inline script runs immediately to set the correct theme
before the page renders, preventing a flash of wrong colors.
-->
<script>
// Check if user prefers dark mode (most will for this app)
// We default to dark mode for the editor
document.documentElement.classList.add('dark');
</script>
</head>
<body>
<!--
ROOT ELEMENT
This is where React mounts the entire application.
Everything you see in Dream-E is rendered inside this div.
The "antialiased" class improves font rendering.
-->
<div id="root" class="antialiased"></div>
<!--
MAIN SCRIPT
This loads our React application.
type="module" means:
- Modern JavaScript (ES modules with import/export)
- Deferred loading (doesn't block page rendering)
- Strict mode enabled
Vite automatically:
- Processes this during development
- Bundles it for production
-->
<script type="module" src="/src/main.tsx"></script>
<!--
NOSCRIPT FALLBACK
Shown if JavaScript is disabled.
Very rare these days, but good practice.
-->
<noscript>
<div style="text-align: center; padding: 50px; font-family: system-ui;">
<h1>Dream-E requires JavaScript</h1>
<p>Please enable JavaScript in your browser to use this application.</p>
</div>
</noscript>
</body>
</html>