Skip to content

Commit b0e392f

Browse files
Add initial wiki documentation structure
1 parent c10e63d commit b0e392f

1 file changed

Lines changed: 269 additions & 0 deletions

File tree

.devin/wiki.json

Lines changed: 269 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,269 @@
1+
{
2+
"repo_notes": [
3+
{
4+
"content": ""
5+
}
6+
],
7+
"pages": [
8+
{
9+
"title": "Overview",
10+
"purpose": "Introduce the Markdown Viewer project, explaining what it is, its core purpose as a client-side markdown renderer, and its key features",
11+
"page_notes": [
12+
{
13+
"content": ""
14+
}
15+
]
16+
},
17+
{
18+
"title": "Getting Started",
19+
"purpose": "Guide users on how to access, run, and use the Markdown Viewer, including local development setup",
20+
"page_notes": [
21+
{
22+
"content": ""
23+
}
24+
]
25+
},
26+
{
27+
"title": "Architecture Overview",
28+
"purpose": "Provide a high-level view of the application's architecture, major systems, and how they interact",
29+
"page_notes": [
30+
{
31+
"content": ""
32+
}
33+
]
34+
},
35+
{
36+
"title": "HTML Structure and Entry Point",
37+
"purpose": "Comprehensive documentation of index.html - the application's entry point, its structure, and how it orchestrates resource loading",
38+
"page_notes": [
39+
{
40+
"content": ""
41+
}
42+
]
43+
},
44+
{
45+
"title": "UI Components and Layout",
46+
"purpose": "Detail the HTML elements that comprise the user interface, including editor pane, preview pane, toolbar, and mobile menu",
47+
"parent": "HTML Structure and Entry Point",
48+
"page_notes": [
49+
{
50+
"content": ""
51+
}
52+
]
53+
},
54+
{
55+
"title": "External Library Integration",
56+
"purpose": "Explain how 15+ external libraries are loaded from CDNs, their versions, and loading order optimization",
57+
"parent": "HTML Structure and Entry Point",
58+
"page_notes": [
59+
{
60+
"content": ""
61+
}
62+
]
63+
},
64+
{
65+
"title": "Application Logic (script.js)",
66+
"purpose": "Comprehensive documentation of the JavaScript application logic - the core processing engine of the application",
67+
"page_notes": [
68+
{
69+
"content": ""
70+
}
71+
]
72+
},
73+
{
74+
"title": "Initialization and Configuration",
75+
"purpose": "Document how the application initializes, detects user preferences, and configures external libraries",
76+
"parent": "Application Logic (script.js)",
77+
"page_notes": [
78+
{
79+
"content": ""
80+
}
81+
]
82+
},
83+
{
84+
"title": "Markdown Rendering Pipeline",
85+
"purpose": "Explain the complete rendering pipeline from markdown input through parsing, sanitization, and enhancement",
86+
"parent": "Application Logic (script.js)",
87+
"page_notes": [
88+
{
89+
"content": ""
90+
}
91+
]
92+
},
93+
{
94+
"title": "Event Handling System",
95+
"purpose": "Document how user interactions are captured, including keyboard shortcuts, button clicks, and file operations",
96+
"parent": "Application Logic (script.js)",
97+
"page_notes": [
98+
{
99+
"content": ""
100+
}
101+
]
102+
},
103+
{
104+
"title": "Import System",
105+
"purpose": "Explain file import functionality including file upload dialog and drag-and-drop support",
106+
"parent": "Application Logic (script.js)",
107+
"page_notes": [
108+
{
109+
"content": ""
110+
}
111+
]
112+
},
113+
{
114+
"title": "Export System",
115+
"purpose": "Detail the export features for Markdown, HTML, and PDF formats, including multiple PDF generation strategies",
116+
"parent": "Application Logic (script.js)",
117+
"page_notes": [
118+
{
119+
"content": ""
120+
}
121+
]
122+
},
123+
{
124+
"title": "Scroll Synchronization",
125+
"purpose": "Explain the bidirectional scroll sync between editor and preview panes, including deadlock prevention",
126+
"parent": "Application Logic (script.js)",
127+
"page_notes": [
128+
{
129+
"content": ""
130+
}
131+
]
132+
},
133+
{
134+
"title": "Styling System (styles.css)",
135+
"purpose": "Comprehensive documentation of the CSS architecture including theming, layout, and component styles",
136+
"page_notes": [
137+
{
138+
"content": ""
139+
}
140+
]
141+
},
142+
{
143+
"title": "Theme System and CSS Variables",
144+
"purpose": "Explain the light/dark mode implementation using CSS custom properties and theme switching mechanism",
145+
"parent": "Styling System (styles.css)",
146+
"page_notes": [
147+
{
148+
"content": ""
149+
}
150+
]
151+
},
152+
{
153+
"title": "Layout System",
154+
"purpose": "Document the flexbox-based layout structure including container hierarchy and pane arrangement",
155+
"parent": "Styling System (styles.css)",
156+
"page_notes": [
157+
{
158+
"content": ""
159+
}
160+
]
161+
},
162+
{
163+
"title": "Responsive Design",
164+
"purpose": "Explain how the application adapts to different screen sizes using media queries and mobile menu",
165+
"parent": "Styling System (styles.css)",
166+
"page_notes": [
167+
{
168+
"content": ""
169+
}
170+
]
171+
},
172+
{
173+
"title": "GitHub Markdown Styling",
174+
"purpose": "Detail the comprehensive GitHub-style markdown rendering including syntax highlighting color schemes",
175+
"parent": "Styling System (styles.css)",
176+
"page_notes": [
177+
{
178+
"content": ""
179+
}
180+
]
181+
},
182+
{
183+
"title": "External Dependencies",
184+
"purpose": "Comprehensive list of all external libraries, their versions, purposes, and how they're integrated",
185+
"page_notes": [
186+
{
187+
"content": ""
188+
}
189+
]
190+
},
191+
{
192+
"title": "Core Processing Libraries",
193+
"purpose": "Document marked.js, DOMPurify, and highlight.js - the essential parsing and security libraries",
194+
"parent": "External Dependencies",
195+
"page_notes": [
196+
{
197+
"content": ""
198+
}
199+
]
200+
},
201+
{
202+
"title": "Enhancement Libraries",
203+
"purpose": "Explain MathJax, Mermaid, and JoyPixels - libraries that add LaTeX, diagrams, and emoji support",
204+
"parent": "External Dependencies",
205+
"page_notes": [
206+
{
207+
"content": ""
208+
}
209+
]
210+
},
211+
{
212+
"title": "Export and UI Libraries",
213+
"purpose": "Detail FileSaver, html2pdf, jsPDF, html2canvas, pdfMake, and Bootstrap - utility and UI libraries",
214+
"parent": "External Dependencies",
215+
"page_notes": [
216+
{
217+
"content": ""
218+
}
219+
]
220+
},
221+
{
222+
"title": "Deployment Guide",
223+
"purpose": "Instructions for deploying the application using Docker and understanding the CI/CD pipeline",
224+
"page_notes": [
225+
{
226+
"content": ""
227+
}
228+
]
229+
},
230+
{
231+
"title": "Docker Configuration",
232+
"purpose": "Explain the Dockerfile (Nginx Alpine setup) and docker-compose.yml for local deployment",
233+
"parent": "Deployment Guide",
234+
"page_notes": [
235+
{
236+
"content": ""
237+
}
238+
]
239+
},
240+
{
241+
"title": "CI/CD Pipeline",
242+
"purpose": "Document the GitHub Actions workflow for automated Docker builds, tagging strategy, and registry publishing",
243+
"parent": "Deployment Guide",
244+
"page_notes": [
245+
{
246+
"content": ""
247+
}
248+
]
249+
},
250+
{
251+
"title": "Assets and Static Resources",
252+
"purpose": "Document the static assets including demo images and icons used in documentation",
253+
"page_notes": [
254+
{
255+
"content": ""
256+
}
257+
]
258+
},
259+
{
260+
"title": "License and Contributing",
261+
"purpose": "Document the Apache 2.0 license and guidelines for contributing to the project",
262+
"page_notes": [
263+
{
264+
"content": ""
265+
}
266+
]
267+
}
268+
]
269+
}

0 commit comments

Comments
 (0)