diff --git a/CHANGELOG.md b/CHANGELOG.md index c5a41b8..33c2f83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,14 @@ + + +## Version 1.29.0 - 2026-01-17 + +Updates the site's CSS and HTML to refine the visual layout and styling of the index page. These changes enhance readability and user interface consistency without altering core functionality. + +**Changes:** 2 files, 297 lines +**Languages:** CSS (293 lines), HTML (4 lines) ## Version 1.28.0 - 2026-01-17 diff --git a/pyproject.toml b/pyproject.toml index 966527f..155b1e8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "Snek" -version = "1.28.0" +version = "1.29.0" readme = "README.md" #license = { file = "LICENSE", content-type="text/markdown" } description = "Snek Chat Application by Molodetz" diff --git a/src/snek/static/site.css b/src/snek/static/site.css new file mode 100644 index 0000000..f9a6f8b --- /dev/null +++ b/src/snek/static/site.css @@ -0,0 +1,293 @@ +* { margin: 0; padding: 0; box-sizing: border-box; } + +html, body { + height: 100%; + font-family: 'Segoe UI', sans-serif; + background: #0a0a0a; + color: #ccc; + line-height: 1.6; +} + +a { color: #7ef; text-decoration: none; } +a:hover { text-decoration: underline; } + +.site-layout { + display: flex; + min-height: 100vh; +} + +.site-sidebar { + width: 200px; + background: #0f0f0f; + padding: 1.5rem; + flex-shrink: 0; + border-right: 1px solid #1a1a1a; +} + +.site-sidebar .logo { + display: flex; + align-items: center; + gap: 0.5rem; + margin-bottom: 2rem; + color: #fff; + font-weight: bold; + font-size: 1.1rem; + text-decoration: none; +} + +.site-sidebar .logo:hover { text-decoration: none; } + +.site-sidebar .logo img { + width: 32px; + height: 32px; + border-radius: 4px; +} + +.site-sidebar nav { margin-bottom: 2rem; } + +.site-sidebar nav a { + display: block; + padding: 0.5rem 0; + color: #7ef; + font-size: 0.95rem; + border-left: 2px solid transparent; + padding-left: 0.75rem; + margin-left: -0.75rem; +} + +.site-sidebar nav a:hover { + color: #fff; + text-decoration: none; +} + +.site-sidebar nav a.active { + color: #fff; + border-left-color: #7ef; +} + +.site-main { + flex: 1; + padding: 2rem 3rem; + overflow-y: auto; +} + +.site-main h1 { + color: #fff; + font-size: 1.75rem; + font-weight: normal; + margin-bottom: 1.5rem; +} + +.site-main h2 { + color: #7ef; + font-size: 1.1rem; + font-weight: 600; + margin: 2rem 0 1rem 0; +} + +.site-main h3 { + color: #0fa; + font-size: 1rem; + margin: 1.5rem 0 0.75rem 0; +} + +.site-main p { margin-bottom: 1rem; } + +.site-main ul, .site-main ol { + margin-bottom: 1rem; + padding-left: 1.5rem; +} + +.site-main li { margin-bottom: 0.4rem; } + +.site-main code { + background: #1a1a1a; + padding: 2px 6px; + border-radius: 3px; + color: #7ef; + font-family: 'Courier New', monospace; + font-size: 0.9em; +} + +.site-main pre { + background: #111; + border: 1px solid #222; + padding: 1rem; + border-radius: 4px; + overflow-x: auto; + margin: 1rem 0; + font-family: 'Courier New', monospace; + font-size: 0.85rem; + color: #ccc; +} + +.site-section { + margin-bottom: 2rem; + padding-bottom: 2rem; + border-bottom: 1px solid #1a1a1a; +} + +.site-section:last-child { border-bottom: none; } + +.btn { + display: inline-block; + padding: 8px 16px; + font-family: 'Courier New', monospace; + font-size: 0.85rem; + text-decoration: none; + border: 1px solid #333; + border-radius: 4px; + cursor: pointer; + transition: all 0.15s; + background: #1a1a1a; + color: #e6e6e6; +} + +.btn:hover { + background: #2a2a2a; + border-color: #444; + color: #fff; + text-decoration: none; +} + +.btn-primary { + background: #0d3d3d; + border-color: #7ef; + color: #7ef; +} + +.btn-primary:hover { + background: #1a4a4a; + color: #fff; +} + +.btn-danger { + border-color: #633; + color: #f66; +} + +.btn-danger:hover { + background: #2a1515; + border-color: #844; +} + +.badge { + display: inline-block; + padding: 2px 8px; + font-size: 0.7rem; + font-weight: 600; + text-transform: uppercase; + border-radius: 3px; + background: #1a2a2a; + color: #7ef; +} + +.badge-green { + background: #1a2a1a; + color: #4a4; +} + +.badge-orange { + background: #2a2a1a; + color: #f90; +} + +.card-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); + gap: 1rem; + margin: 1.5rem 0; +} + +.card { + background: #111; + border: 1px solid #1a1a1a; + border-radius: 4px; + padding: 1.25rem; + transition: border-color 0.15s; +} + +.card:hover { border-color: #333; } + +.card h3 { + color: #7ef; + font-size: 1rem; + margin: 0 0 0.5rem 0; +} + +.card p { + color: #888; + font-size: 0.9rem; + margin: 0; +} + +.table-wrap { + overflow-x: auto; + margin: 1rem 0; +} + +table { + width: 100%; + border-collapse: collapse; +} + +th, td { + text-align: left; + padding: 0.75rem 1rem; + border-bottom: 1px solid #1a1a1a; +} + +th { + color: #888; + font-weight: normal; + font-size: 0.85rem; + text-transform: lowercase; +} + +td { color: #ccc; } + +tr:hover td { background: #111; } + +.method-name { + font-family: 'Courier New', monospace; + color: #0fa; + font-weight: bold; +} + +.method-sig { + font-family: 'Courier New', monospace; + color: #666; + font-size: 0.9em; +} + +@media (max-width: 768px) { + .site-layout { flex-direction: column; } + + .site-sidebar { + width: 100%; + border-right: none; + border-bottom: 1px solid #1a1a1a; + padding: 1rem; + } + + .site-sidebar nav { + display: flex; + flex-wrap: wrap; + gap: 0.5rem; + } + + .site-sidebar nav a { + border-left: none; + padding: 0.4rem 0.75rem; + margin: 0; + background: #1a1a1a; + border-radius: 4px; + } + + .site-sidebar nav a.active { + background: #0d3d3d; + border-left: none; + } + + .site-main { padding: 1.5rem; } +} diff --git a/src/snek/templates/index.html b/src/snek/templates/index.html index 1d0891c..31f30a8 100644 --- a/src/snek/templates/index.html +++ b/src/snek/templates/index.html @@ -168,8 +168,8 @@
Professional Platform for Developers, Testers & AI Professionals
Login Register - Docs - About + Docs + About