90 lines
2 KiB
HTML
90 lines
2 KiB
HTML
|
|
{% extends "base.html" %}
|
||
|
|
|
||
|
|
{% block title %}Home - General Bots{% endblock %}
|
||
|
|
|
||
|
|
{% block content %}
|
||
|
|
<div class="home-container">
|
||
|
|
<h1 class="home-title">Welcome to General Bots</h1>
|
||
|
|
<p class="home-subtitle">Your AI-powered workspace</p>
|
||
|
|
|
||
|
|
<div class="app-grid">
|
||
|
|
{% for app in apps %}
|
||
|
|
<a href="{{ app.url }}"
|
||
|
|
class="app-card"
|
||
|
|
hx-get="{{ app.url }}"
|
||
|
|
hx-target="#main-content"
|
||
|
|
hx-push-url="true">
|
||
|
|
<div class="app-icon">{{ app.icon }}</div>
|
||
|
|
<div class="app-name">{{ app.name }}</div>
|
||
|
|
<div class="app-description">{{ app.description }}</div>
|
||
|
|
</a>
|
||
|
|
{% endfor %}
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<style>
|
||
|
|
.home-container {
|
||
|
|
padding: 2rem;
|
||
|
|
max-width: 1200px;
|
||
|
|
margin: 0 auto;
|
||
|
|
}
|
||
|
|
|
||
|
|
.home-title {
|
||
|
|
font-size: 2.5rem;
|
||
|
|
font-weight: 600;
|
||
|
|
margin-bottom: 0.5rem;
|
||
|
|
color: var(--text);
|
||
|
|
}
|
||
|
|
|
||
|
|
.home-subtitle {
|
||
|
|
font-size: 1.25rem;
|
||
|
|
color: var(--text-secondary);
|
||
|
|
margin-bottom: 2rem;
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-grid {
|
||
|
|
display: grid;
|
||
|
|
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
|
||
|
|
gap: 1.5rem;
|
||
|
|
padding: 1rem 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-card {
|
||
|
|
background: var(--surface);
|
||
|
|
border: 1px solid var(--border);
|
||
|
|
border-radius: var(--radius);
|
||
|
|
padding: 1.5rem;
|
||
|
|
text-decoration: none;
|
||
|
|
color: inherit;
|
||
|
|
transition: all 0.2s ease;
|
||
|
|
display: flex;
|
||
|
|
flex-direction: column;
|
||
|
|
align-items: center;
|
||
|
|
text-align: center;
|
||
|
|
gap: 0.75rem;
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-card:hover {
|
||
|
|
transform: translateY(-2px);
|
||
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
||
|
|
border-color: var(--primary);
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-icon {
|
||
|
|
font-size: 3rem;
|
||
|
|
line-height: 1;
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-name {
|
||
|
|
font-weight: 600;
|
||
|
|
font-size: 1.125rem;
|
||
|
|
color: var(--text);
|
||
|
|
}
|
||
|
|
|
||
|
|
.app-description {
|
||
|
|
font-size: 0.875rem;
|
||
|
|
color: var(--text-secondary);
|
||
|
|
}
|
||
|
|
</style>
|
||
|
|
{% endblock %}
|