a b/web/server/server.html
1
<!DOCTYPE html>
2
<html lang="en">
3
4
<head>
5
    <!-- Google tag (gtag.js) -->
6
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-0LTP0WK7EM"></script>
7
    <script>
8
        window.dataLayer = window.dataLayer || [];
9
        function gtag() { dataLayer.push(arguments); }
10
        gtag('js', new Date());
11
12
        gtag('config', 'G-0LTP0WK7EM');
13
    </script>
14
    <meta charset="UTF-8">
15
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
16
    <title>Server - DNAnalyzer</title>
17
    <link rel="stylesheet" href="../style.css">
18
    <link rel="stylesheet" href="server.css">
19
    <link
20
        href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap"
21
        rel="stylesheet">
22
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
23
    <link rel="shortcut icon" href="../assets/icons/Icon_Dark_BG.svg" type="image/svg+xml">
24
</head>
25
26
<body>
27
    <!-- Background effects -->
28
    <div class="bg-gradient">
29
        <div class="bg-blob bg-blob-1"></div>
30
        <div class="bg-blob bg-blob-2"></div>
31
    </div>
32
33
    <!-- Navbar -->
34
    <nav class="navbar" id="navbar">
35
        <div class="container navbar-container">
36
            <a href="../index.html" class="logo">
37
                <img src="../assets/icons/Icon_Dark_BG.svg" alt="DNAnalyzer Logo">
38
                <span class="logo-text">DNAnalyzer</span>
39
            </a>
40
41
            <button class="mobile-toggle" id="mobileToggle" aria-label="Toggle navigation">
42
                <i class="fas fa-bars"></i>
43
            </button>
44
45
            <ul class="nav-links" id="navLinks">
46
                <li><a href="../index.html">Home</a></li>
47
                <li><a href="../features/features.html">Features</a></li>
48
                <li><a href="../analyzer/analyzer.html">Analyzer</a></li>
49
                <li><a href="server.html" class="active">Server</a></li>
50
                <li><a href="../docs/docs.html">Docs</a></li>
51
                <li><a href="../about/about.html">About</a></li>
52
            </ul>
53
54
            <div class="nav-buttons">
55
                <a href="https://github.com/VerisimilitudeX/DNAnalyzer" class="btn btn-secondary btn-sm">
56
                    <i class="fab fa-github btn-icon"></i> GitHub
57
                </a>
58
            </div>
59
        </div>
60
    </nav>
61
62
    <!-- Main Content -->
63
    <main>
64
        <section class="hero">
65
            <div class="container">
66
                <div class="hero-content">
67
                    <div class="hero-headings">
68
                        <h1>DNAnalyzer <span>Server</span></h1>
69
                        <p class="hero-subtitle">Set up and run your own DNAnalyzer server for local development and
70
                            advanced genomic analysis</p>
71
                    </div>
72
                </div>
73
            </div>
74
        </section>
75
76
        <section class="section">
77
            <div class="container">
78
                <div class="section-title">
79
                    <h2>Server Status</h2>
80
                    <p>Check your local server installation status and requirements</p>
81
                </div>
82
83
                <div class="card-grid">
84
                    <div class="card">
85
                        <div class="card-icon">
86
                            <i class="fas fa-server"></i>
87
                        </div>
88
                        <h3 class="card-title">Server Status</h3>
89
                        <div id="server-status" class="status-value">Checking...</div>
90
                        <p>Local Server</p>
91
                    </div>
92
93
                    <div class="card">
94
                        <div class="card-icon">
95
                            <i class="fas fa-memory"></i>
96
                        </div>
97
                        <h3 class="card-title">System Requirements</h3>
98
                        <div class="status-value">2GB+</div>
99
                        <p>Minimum RAM</p>
100
                    </div>
101
102
                    <div class="card">
103
                        <div class="card-icon">
104
                            <i class="fas fa-code-branch"></i>
105
                        </div>
106
                        <h3 class="card-title">Version</h3>
107
                        <div class="status-value">Java 17+</div>
108
                        <p>Required Runtime</p>
109
                    </div>
110
                </div>
111
            </div>
112
        </section>
113
114
        <section class="section section-bg-gradient">
115
            <div class="container">
116
                <div class="section-title">
117
                    <h2>Quick Start Guide</h2>
118
                    <p>Follow these steps to set up your local DNAnalyzer server</p>
119
                </div>
120
121
                <div class="steps-container">
122
                    <div class="step-item">
123
                        <div class="step-content">
124
                            <h3>Clone the Repository</h3>
125
                            <div class="code-block">
126
                                <code>git clone https://github.com/VerisimilitudeX/DNAnalyzer.git && cd DNAnalyzer</code>
127
                                <button class="copy-button" onclick="copyCloneCommand()">Copy</button>
128
                            </div>
129
                            <p>Clone the repository and navigate to the project directory</p>
130
                        </div>
131
                    </div>
132
133
                    <div class="step-item">
134
                        <div class="step-content">
135
                            <h3>Setup Gradle</h3>
136
                            <div class="code-block">
137
                                <code>chmod +x ./gradlew</code>
138
                                <button class="copy-button" onclick="copyChmodCommand()">Copy</button>
139
                            </div>
140
                            <p>Make the Gradle wrapper executable (Unix/macOS systems)</p>
141
                        </div>
142
                    </div>
143
144
                    <div class="step-item">
145
                        <div class="step-content">
146
                            <h3>Build the Project</h3>
147
                            <div class="code-block">
148
                                <code>./gradlew clean bootJar</code>
149
                                <button class="copy-button" onclick="copyBuildCommand()">Copy</button>
150
                            </div>
151
                            <p>Build the project (this may take a few minutes on first run)</p>
152
                        </div>
153
                    </div>
154
155
                    <div class="step-item">
156
                        <div class="step-content">
157
                            <h3>Start the Server</h3>
158
                            <div class="code-block">
159
                                <code>java -jar build/libs/DNAnalyzer.jar</code>
160
                                <button class="copy-button" onclick="copyRunCommand()">Copy</button>
161
                            </div>
162
                            <p>Start the local server on port 8080</p>
163
                        </div>
164
                    </div>
165
                </div>
166
            </div>
167
        </section>
168
169
        <section class="section" id="troubleshooting">
170
            <div class="container">
171
                <div class="section-title">
172
                    <h2>Troubleshooting</h2>
173
                    <p>Common issues and their solutions</p>
174
                </div>
175
176
                <div class="feature-card">
177
                    <div class="feature-icon feature-icon-magenta">
178
                        <i class="fas fa-network-wired"></i>
179
                    </div>
180
                    <div class="feature-content">
181
                        <h3>Port Already in Use</h3>
182
                        <p>If port 8080 is already in use, you may see an error like "Address already in use". To fix
183
                            this:</p>
184
                        <ul>
185
                            <li>Close any other applications using port 8080</li>
186
                            <li>Or modify the port in application.yml to use a different port</li>
187
                            <li>Alternatively, use the command line option to specify a different port</li>
188
                        </ul>
189
                        <div class="code-block">
190
                            <code>java -jar build/libs/DNAnalyzer.jar --server.port=8090</code>
191
                        </div>
192
                    </div>
193
                </div>
194
195
                <div class="feature-card">
196
                    <div class="feature-icon feature-icon-blue">
197
                        <i class="fab fa-java"></i>
198
                    </div>
199
                    <div class="feature-content">
200
                        <h3>Java Version Issues</h3>
201
                        <p>If you see "UnsupportedClassVersionError", make sure you have Java 17+ installed:</p>
202
                        <div class="code-block">
203
                            <code>java -version</code>
204
                        </div>
205
                        <p>Download and install Java 17 or later if your version is outdated.</p>
206
                    </div>
207
                </div>
208
209
                <div class="feature-card">
210
                    <div class="feature-icon feature-icon-orange">
211
                        <i class="fas fa-exclamation-triangle"></i>
212
                    </div>
213
                    <div class="feature-content">
214
                        <h3>Build Failures</h3>
215
                        <p>If you encounter build errors, try these solutions:</p>
216
                        <ul>
217
                            <li>Run './gradlew clean' first to clear any cached files</li>
218
                            <li>Make sure your Java installation is properly configured</li>
219
                            <li>Ensure you have write permissions in the project directory</li>
220
                            <li>Update Gradle wrapper if needed with './gradlew wrapper --gradle-version=7.5'</li>
221
                        </ul>
222
                    </div>
223
                </div>
224
            </div>
225
        </section>
226
227
        <section class="section section-bg-dark">
228
            <div class="container text-center">
229
                <h2>Ready to Contribute?</h2>
230
                <p class="mb-xl">Join our community and help improve DNAnalyzer's server capabilities.</p>
231
232
                <div class="hero-buttons" style="justify-content: center;">
233
                    <a href="https://github.com/VerisimilitudeX/DNAnalyzer" class="btn btn-primary">
234
                        <i class="fab fa-github btn-icon"></i> Fork on GitHub
235
                    </a>
236
                    <a href="https://discord.gg/xNpujz49gj" class="btn btn-secondary">
237
                        <i class="fab fa-discord btn-icon"></i> Join Discord
238
                    </a>
239
                </div>
240
            </div>
241
        </section>
242
    </main>
243
244
    <!-- Footer -->
245
    <footer class="footer">
246
        <div class="container">
247
            <div class="footer-grid">
248
                <div class="footer-brand">
249
                    <img src="../assets/icons/Icon_Dark_BG.svg" alt="DNAnalyzer Logo">
250
                    <p>DNAnalyzer is a powerful, privacy-focused DNA analysis tool using cutting-edge machine learning
251
                        models for accurate, on-device genomic analysis.</p>
252
253
                    <div class="footer-social">
254
                        <a href="https://github.com/VerisimilitudeX/DNAnalyzer" class="social-link">
255
                            <i class="fab fa-github"></i>
256
                        </a>
257
                        <a href="https://discord.gg/xNpujz49gj" class="social-link">
258
                            <i class="fab fa-discord"></i>
259
                        </a>
260
                        <a href="https://twitter.com/DNAnalyzer_" class="social-link">
261
                            <i class="fab fa-twitter"></i>
262
                        </a>
263
                    </div>
264
                </div>
265
266
                <div class="footer-nav">
267
                    <h4>Product</h4>
268
                    <ul>
269
                        <li><a href="../features/features.html">Features</a></li>
270
                        <li><a href="../analyzer/analyzer.html">DNA Analyzer</a></li>
271
                        <li><a href="server.html">Server</a></li>
272
                        <li><a href="../docs/docs.html">Documentation</a></li>
273
                    </ul>
274
                </div>
275
276
                <div class="footer-nav">
277
                    <h4>Resources</h4>
278
                    <ul>
279
                        <li><a href="../docs/getting-started.md">Getting Started</a></li>
280
                        <li><a href="../docs/citations.md">Citations</a></li>
281
                        <li><a href="../docs/research/genes.md">Gene Research</a></li>
282
                        <li><a href="../docs/samples/cli-arguments-examples.md">CLI Examples</a></li>
283
                    </ul>
284
                </div>
285
286
                <div class="footer-nav">
287
                    <h4>Community</h4>
288
                    <ul>
289
                        <li><a href="https://github.com/VerisimilitudeX/DNAnalyzer">GitHub</a></li>
290
                        <li><a href="https://discord.gg/xNpujz49gj">Discord</a></li>
291
                        <li><a href="../docs/contributing/CONTRIBUTING.md">Contributing</a></li>
292
                        <li><a href="../CODE_OF_CONDUCT.md">Code of Conduct</a></li>
293
                    </ul>
294
                </div>
295
            </div>
296
297
            <div class="footer-bottom">
298
                <div class="footer-copyright">
299
                    Copyright &copy; Piyush Acharya 2025. DNAnalyzer is a fiscally sponsored 501(c)(3) nonprofit (EIN:
300
                    81-2908499). MIT License.
301
                </div>
302
303
                <div class="footer-links">
304
                    <a href="../LICENSE.md">License</a>
305
                    <a href="../SECURITY.md">Security</a>
306
                    <a href="../CITATION.cff">Citation</a>
307
                </div>
308
            </div>
309
        </div>
310
    </footer>
311
312
    <script src="server.js"></script>
313
</body>
314
315
</html>