Spaces:
Configuration error
Configuration error
🚀 Fix Vercel deployment configuration
Browse files- Create public/ output directory for build files
- Update package.json build script to copy all static assets
- Clean vercel.json configuration to avoid routes/rewrites conflicts
- Add proper buildCommand and outputDirectory settings
- Ready for production deployment without errors
- dashboard/package.json +2 -2
- dashboard/public/index.html +44 -0
- dashboard/public/script.js +48 -0
- dashboard/public/styles.css +47 -0
- dashboard/vercel.json +3 -4
dashboard/package.json
CHANGED
|
@@ -5,8 +5,8 @@
|
|
| 5 |
"main": "index.html",
|
| 6 |
"scripts": {
|
| 7 |
"dev": "python3 -m http.server 3000",
|
| 8 |
-
"build": "
|
| 9 |
-
"start": "python3 -m http.server 8080"
|
| 10 |
},
|
| 11 |
"keywords": ["aethero", "dashboard", "introspective", "ai"],
|
| 12 |
"author": "AetheroOS",
|
|
|
|
| 5 |
"main": "index.html",
|
| 6 |
"scripts": {
|
| 7 |
"dev": "python3 -m http.server 3000",
|
| 8 |
+
"build": "mkdir -p public && cp index.html styles.css script.js public/",
|
| 9 |
+
"start": "python3 -m http.server 8080 --directory public"
|
| 10 |
},
|
| 11 |
"keywords": ["aethero", "dashboard", "introspective", "ai"],
|
| 12 |
"author": "AetheroOS",
|
dashboard/public/index.html
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>Aethero Dashboard</title>
|
| 7 |
+
<link rel="stylesheet" href="styles.css">
|
| 8 |
+
</head>
|
| 9 |
+
<body>
|
| 10 |
+
<header>
|
| 11 |
+
<h1>Aethero Introspective Dashboard</h1>
|
| 12 |
+
<nav>
|
| 13 |
+
<ul>
|
| 14 |
+
<li><a href="#parser-logs">Parser Logs</a></li>
|
| 15 |
+
<li><a href="#test-results">Test Results</a></li>
|
| 16 |
+
<li><a href="#feedback">Feedback</a></li>
|
| 17 |
+
</ul>
|
| 18 |
+
</nav>
|
| 19 |
+
</header>
|
| 20 |
+
<main>
|
| 21 |
+
<section id="introspective-space">
|
| 22 |
+
<h2>Introspective Space</h2>
|
| 23 |
+
<p>Welcome to the introspective space of Aethero. Explore cognitive flows and insights here.</p>
|
| 24 |
+
</section>
|
| 25 |
+
<section id="parser-logs">
|
| 26 |
+
<h2>Parser Logs</h2>
|
| 27 |
+
<div id="logs-container">Loading logs...</div>
|
| 28 |
+
</section>
|
| 29 |
+
<section id="test-results">
|
| 30 |
+
<h2>Test Results</h2>
|
| 31 |
+
<canvas id="radar-chart"></canvas>
|
| 32 |
+
</section>
|
| 33 |
+
<section id="feedback">
|
| 34 |
+
<h2>Feedback</h2>
|
| 35 |
+
<div id="feedback-container">Loading feedback...</div>
|
| 36 |
+
</section>
|
| 37 |
+
</main>
|
| 38 |
+
<footer>
|
| 39 |
+
<p>© 2025 Aethero Systems</p>
|
| 40 |
+
</footer>
|
| 41 |
+
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
| 42 |
+
<script src="script.js"></script>
|
| 43 |
+
</body>
|
| 44 |
+
</html>
|
dashboard/public/script.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
document.addEventListener('DOMContentLoaded', () => {
|
| 2 |
+
console.log('Aethero Dashboard Loaded');
|
| 3 |
+
|
| 4 |
+
// Simulate loading parser logs
|
| 5 |
+
const logsContainer = document.getElementById('logs-container');
|
| 6 |
+
logsContainer.textContent = 'Parser logs will be displayed here.';
|
| 7 |
+
|
| 8 |
+
// Simulate radar chart for test results
|
| 9 |
+
const radarChart = document.getElementById('radar-chart');
|
| 10 |
+
if (radarChart) {
|
| 11 |
+
const ctx = radarChart.getContext('2d');
|
| 12 |
+
new Chart(ctx, {
|
| 13 |
+
type: 'radar',
|
| 14 |
+
data: {
|
| 15 |
+
labels: ['Stability', 'Performance', 'Coverage', 'Accuracy', 'Introspection'],
|
| 16 |
+
datasets: [{
|
| 17 |
+
label: 'Test Metrics',
|
| 18 |
+
data: [80, 90, 70, 85, 95],
|
| 19 |
+
backgroundColor: 'rgba(75, 192, 192, 0.2)',
|
| 20 |
+
borderColor: 'rgba(75, 192, 192, 1)',
|
| 21 |
+
borderWidth: 1
|
| 22 |
+
}]
|
| 23 |
+
},
|
| 24 |
+
options: {
|
| 25 |
+
responsive: true,
|
| 26 |
+
scales: {
|
| 27 |
+
r: {
|
| 28 |
+
angleLines: {
|
| 29 |
+
display: false
|
| 30 |
+
},
|
| 31 |
+
suggestedMin: 50,
|
| 32 |
+
suggestedMax: 100
|
| 33 |
+
}
|
| 34 |
+
}
|
| 35 |
+
}
|
| 36 |
+
});
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
// Simulate loading feedback
|
| 40 |
+
const feedbackContainer = document.getElementById('feedback-container');
|
| 41 |
+
feedbackContainer.textContent = 'Feedback data will be displayed here.';
|
| 42 |
+
|
| 43 |
+
// Example interaction logic
|
| 44 |
+
const introspectiveSpace = document.getElementById('introspective-space');
|
| 45 |
+
introspectiveSpace.addEventListener('click', () => {
|
| 46 |
+
alert('Welcome to the introspective space!');
|
| 47 |
+
});
|
| 48 |
+
});
|
dashboard/public/styles.css
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
body {
|
| 2 |
+
font-family: Arial, sans-serif;
|
| 3 |
+
margin: 0;
|
| 4 |
+
padding: 0;
|
| 5 |
+
background-color: #f4f4f9;
|
| 6 |
+
color: #333;
|
| 7 |
+
}
|
| 8 |
+
|
| 9 |
+
header {
|
| 10 |
+
background-color: #4CAF50;
|
| 11 |
+
color: white;
|
| 12 |
+
padding: 1rem;
|
| 13 |
+
text-align: center;
|
| 14 |
+
}
|
| 15 |
+
|
| 16 |
+
header nav ul {
|
| 17 |
+
list-style: none;
|
| 18 |
+
padding: 0;
|
| 19 |
+
display: flex;
|
| 20 |
+
justify-content: center;
|
| 21 |
+
gap: 1rem;
|
| 22 |
+
}
|
| 23 |
+
|
| 24 |
+
header nav ul li a {
|
| 25 |
+
color: white;
|
| 26 |
+
text-decoration: none;
|
| 27 |
+
font-weight: bold;
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
main {
|
| 31 |
+
padding: 2rem;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
section {
|
| 35 |
+
margin-bottom: 2rem;
|
| 36 |
+
padding: 1rem;
|
| 37 |
+
background: white;
|
| 38 |
+
border-radius: 8px;
|
| 39 |
+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
footer {
|
| 43 |
+
text-align: center;
|
| 44 |
+
padding: 1rem;
|
| 45 |
+
background-color: #333;
|
| 46 |
+
color: white;
|
| 47 |
+
}
|
dashboard/vercel.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
| 1 |
{
|
| 2 |
"name": "aethero-dashboard",
|
| 3 |
"version": 2,
|
|
|
|
|
|
|
| 4 |
"cleanUrls": true,
|
| 5 |
-
"trailingSlash": false
|
| 6 |
-
"rewrites": [
|
| 7 |
-
{ "source": "/(.*)", "destination": "/index.html" }
|
| 8 |
-
]
|
| 9 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "aethero-dashboard",
|
| 3 |
"version": 2,
|
| 4 |
+
"buildCommand": "npm run build",
|
| 5 |
+
"outputDirectory": "public",
|
| 6 |
"cleanUrls": true,
|
| 7 |
+
"trailingSlash": false
|
|
|
|
|
|
|
|
|
|
| 8 |
}
|