Upload folder using huggingface_hub
Browse files- .gitattributes +1 -0
- client/public/fonts/Lobster-Regular.ttf +3 -0
- client/public/index.html +7 -0
- client/src/components/Layout.tsx +17 -3
- client/src/pages/Dashboard.tsx +2 -2
.gitattributes
CHANGED
|
@@ -45,3 +45,4 @@ client/public/fonts/Champion.otf filter=lfs diff=lfs merge=lfs -text
|
|
| 45 |
client/public/fonts/Exo2.ttf filter=lfs diff=lfs merge=lfs -text
|
| 46 |
client/public/favicon-512x512.png filter=lfs diff=lfs merge=lfs -text
|
| 47 |
client/public/fonts/SmileySans-Oblique.otf filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 45 |
client/public/fonts/Exo2.ttf filter=lfs diff=lfs merge=lfs -text
|
| 46 |
client/public/favicon-512x512.png filter=lfs diff=lfs merge=lfs -text
|
| 47 |
client/public/fonts/SmileySans-Oblique.otf filter=lfs diff=lfs merge=lfs -text
|
| 48 |
+
client/public/fonts/Lobster-Regular.ttf filter=lfs diff=lfs merge=lfs -text
|
client/public/fonts/Lobster-Regular.ttf
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:cddd7779fb2e78382a654f91dd5a656218cf133a244e17a2f5d960c06f95d73c
|
| 3 |
+
size 396740
|
client/public/index.html
CHANGED
|
@@ -56,6 +56,13 @@
|
|
| 56 |
font-style: oblique;
|
| 57 |
font-display: swap;
|
| 58 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 59 |
</style>
|
| 60 |
<title>TransHub</title>
|
| 61 |
</head>
|
|
|
|
| 56 |
font-style: oblique;
|
| 57 |
font-display: swap;
|
| 58 |
}
|
| 59 |
+
@font-face {
|
| 60 |
+
font-family: 'Lobster';
|
| 61 |
+
src: url('%PUBLIC_URL%/fonts/Lobster-Regular.ttf') format('truetype');
|
| 62 |
+
font-weight: 400;
|
| 63 |
+
font-style: normal;
|
| 64 |
+
font-display: swap;
|
| 65 |
+
}
|
| 66 |
</style>
|
| 67 |
<title>TransHub</title>
|
| 68 |
</head>
|
client/src/components/Layout.tsx
CHANGED
|
@@ -155,13 +155,27 @@ const Layout: React.FC<{ children: React.ReactNode }> = ({ children }) => {
|
|
| 155 |
navigation.push({ name: 'Manage', href: '/manage', icon: Cog6ToothIcon });
|
| 156 |
}
|
| 157 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 158 |
return (
|
| 159 |
<div className="min-h-screen bg-ui-bg text-ui-text">
|
| 160 |
{/* Top Bar */}
|
| 161 |
<header className="sticky top-0 z-40 bg-ui-panel/80 backdrop-blur border-b border-ui-border">
|
| 162 |
<div className="px-4 sm:px-6 lg:px-8 h-14 flex items-center justify-between">
|
| 163 |
-
<Link to="/dashboard" className="text-
|
| 164 |
-
<img src="/
|
| 165 |
TransHub
|
| 166 |
</Link>
|
| 167 |
<div />
|
|
@@ -183,7 +197,7 @@ const Layout: React.FC<{ children: React.ReactNode }> = ({ children }) => {
|
|
| 183 |
isActive ? 'text-ui-text' : 'text-ui-text/80 hover:text-ui-text'
|
| 184 |
}`}
|
| 185 |
>
|
| 186 |
-
<img src={
|
| 187 |
<span>{item.name}</span>
|
| 188 |
</Link>
|
| 189 |
);
|
|
|
|
| 155 |
navigation.push({ name: 'Manage', href: '/manage', icon: Cog6ToothIcon });
|
| 156 |
}
|
| 157 |
|
| 158 |
+
const iconSrcFor = (name: string): string => {
|
| 159 |
+
switch (name) {
|
| 160 |
+
case 'Home': return '/icons/home.svg';
|
| 161 |
+
case 'Tutorial Tasks': return '/icons/tutorial tasks.svg';
|
| 162 |
+
case 'Weekly Practice': return '/icons/weekly practice.svg';
|
| 163 |
+
case 'Votes': return '/icons/votes.svg';
|
| 164 |
+
case 'Toolkit': return '/icons/toolkit.svg';
|
| 165 |
+
case 'Slides': return '/icons/slides.svg';
|
| 166 |
+
case 'Feedback': return '/icons/feedback.svg';
|
| 167 |
+
case 'Manage': return '/icons/manage.svg';
|
| 168 |
+
default: return '/icons/home.svg';
|
| 169 |
+
}
|
| 170 |
+
};
|
| 171 |
+
|
| 172 |
return (
|
| 173 |
<div className="min-h-screen bg-ui-bg text-ui-text">
|
| 174 |
{/* Top Bar */}
|
| 175 |
<header className="sticky top-0 z-40 bg-ui-panel/80 backdrop-blur border-b border-ui-border">
|
| 176 |
<div className="px-4 sm:px-6 lg:px-8 h-14 flex items-center justify-between">
|
| 177 |
+
<Link to="/dashboard" className="text-[1.6rem] font-bold text-ui-neonBlue flex items-center" style={{ fontFamily: 'Lobster, Inter, system-ui, sans-serif' }}>
|
| 178 |
+
<img src="/icons/001-treasure map.svg" alt="logo" className="h-7 w-7 mr-2" />
|
| 179 |
TransHub
|
| 180 |
</Link>
|
| 181 |
<div />
|
|
|
|
| 197 |
isActive ? 'text-ui-text' : 'text-ui-text/80 hover:text-ui-text'
|
| 198 |
}`}
|
| 199 |
>
|
| 200 |
+
<img src={iconSrcFor(item.name)} alt="" className="h-6 w-6 mr-3" />
|
| 201 |
<span>{item.name}</span>
|
| 202 |
</Link>
|
| 203 |
);
|
client/src/pages/Dashboard.tsx
CHANGED
|
@@ -140,8 +140,8 @@ const Dashboard: React.FC = () => {
|
|
| 140 |
className="bg-ui-panel rounded-xl shadow-sm border border-ui-border p-6 hover:shadow-md transition neon-border"
|
| 141 |
>
|
| 142 |
<div className="flex items-center">
|
| 143 |
-
<div className={`p-3 rounded-2xl bg-ui-neonBlue/
|
| 144 |
-
<action.icon className="h-6 w-6 text-ui-
|
| 145 |
</div>
|
| 146 |
<div className="ml-4">
|
| 147 |
<h3 className="text-lg font-medium text-ui-text">{action.name}</h3>
|
|
|
|
| 140 |
className="bg-ui-panel rounded-xl shadow-sm border border-ui-border p-6 hover:shadow-md transition neon-border"
|
| 141 |
>
|
| 142 |
<div className="flex items-center">
|
| 143 |
+
<div className={`p-3 rounded-2xl bg-gradient-to-br from-ui-neonBlue/30 via-ui-neonCyan/30 to-ui-neonBlue/30 hover:from-ui-neonBlue/40 hover:via-ui-neonCyan/40 hover:to-ui-neonBlue/40`}>
|
| 144 |
+
<action.icon className="h-6 w-6 text-ui-neonBlue" />
|
| 145 |
</div>
|
| 146 |
<div className="ml-4">
|
| 147 |
<h3 className="text-lg font-medium text-ui-text">{action.name}</h3>
|