From 04d91bd69a992b4b7ef4016e44ca0d94f740c536 Mon Sep 17 00:00:00 2001 From: Tomas Dvorak Date: Tue, 15 Sep 2026 19:31:05 +0200 Subject: [PATCH] New logo + full auth redesign MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace purple isometric illustration with a flat brand mark: pink gradient tile, ribbed container glyph, ground rail — reads at 32px - Favicon now uses containr.svg instead of vite.svg - Auth: drop the split panel for a centered layout — dot-grid, ambient pink glow, logo + wordmark above a compact card, real Google mark, labeled OAuth divider Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- app/frontend/index.html | 2 +- app/frontend/public/containr.svg | 178 ++--------------------- app/frontend/src/features/auth/pages.tsx | 107 ++++---------- containr.svg | 178 ++--------------------- 4 files changed, 51 insertions(+), 414 deletions(-) diff --git a/app/frontend/index.html b/app/frontend/index.html index cc69fd2..5f26d19 100644 --- a/app/frontend/index.html +++ b/app/frontend/index.html @@ -2,7 +2,7 @@ - + containr diff --git a/app/frontend/public/containr.svg b/app/frontend/public/containr.svg index 6184e83..e872de2 100644 --- a/app/frontend/public/containr.svg +++ b/app/frontend/public/containr.svg @@ -1,172 +1,14 @@ - - - + - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + diff --git a/app/frontend/src/features/auth/pages.tsx b/app/frontend/src/features/auth/pages.tsx index a1db858..e83467e 100644 --- a/app/frontend/src/features/auth/pages.tsx +++ b/app/frontend/src/features/auth/pages.tsx @@ -2,8 +2,7 @@ import { useMemo, useState } from 'react'; import type { FormEvent } from 'react'; import { Link, Navigate, useNavigate, useSearchParams } from 'react-router-dom'; import { useQuery, useQueryClient } from '@tanstack/react-query'; -import { AlertCircle, ArrowRight, Github, Globe, Layers, Loader2, Mail, ScrollText, User2, Zap } from 'lucide-react'; -import { LineAreaChart, DonutChart } from '@/shared/components'; +import { AlertCircle, ArrowRight, Github, Loader2, Mail, User2 } from 'lucide-react'; import { AuthError, getAuthBootstrap, @@ -32,67 +31,14 @@ function buildOAuthCallbackURL(path: string): string { return `${window.location.origin}${cleanPath}`; } -function AuthCanvas() { - const features = [ - { icon: Zap, title: 'Instant deploys', body: 'Images or Git repositories to running containers.' }, - { icon: Globe, title: 'Domains & routing', body: 'Traefik-managed endpoints per service.' }, - { icon: ScrollText, title: 'Logs & metrics', body: 'Live container telemetry and log streams.' }, - { icon: Layers, title: 'Project canvas', body: 'Services, groups, and dependencies on one map.' }, - ]; - const previewSparkline = [18, 22, 19, 31, 28, 42, 38, 51, 47, 58, 52, 64]; - +function GoogleMark() { return ( -
-
-
-
-
- Containr - Containr -
-

- Your containers, -
- one platform. -

-

- Self-hosted deployment platform. Projects, services, builds, and live telemetry — owned end to end. -

- -
- {features.map((feature) => ( -
-
- -
-
-

{feature.title}

-

{feature.body}

-
-
- ))} -
-
- -
-
-

Platform Preview

- Active -
-
-
-

api-gateway

-

3 instances · deployed 4m ago

- -
-
- -

Memory

-
-
-
-
-
+ ); } @@ -106,28 +52,35 @@ function AuthCard({ children: React.ReactNode; }) { return ( -
-
-
- Containr - Containr -
-

Containr

-

{title}

-

{subtitle}

+
+
+

{title}

+

{subtitle}

+ {children}
- {children}
); } function AuthLayout({ children }: { children: React.ReactNode }) { return ( -
+
+
-
- -
{children}
+
+
+
+ Containr + Containr + Self-hosted container platform +
+ {children} +

+ Sessions are cookie-based · first account becomes platform owner +

); @@ -278,7 +231,7 @@ export function SignInPage() { onClick={() => void signInWithGoogleProvider()} className="inline-flex h-10 items-center justify-center gap-2 rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--surface-muted)] text-sm font-medium text-[var(--text-primary)] transition-colors hover:border-[var(--border-default)]" > - G + Google
diff --git a/containr.svg b/containr.svg index 6184e83..e872de2 100644 --- a/containr.svg +++ b/containr.svg @@ -1,172 +1,14 @@ - - - + - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file +