initial checkin
This commit is contained in:
BIN
src/app/apple-icon.png
Normal file
BIN
src/app/apple-icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.2 KiB |
BIN
src/app/favicon.ico
Normal file
BIN
src/app/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
60
src/app/globals.css
Normal file
60
src/app/globals.css
Normal file
@@ -0,0 +1,60 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
@layer base {
|
||||
:root {
|
||||
--background: 0 0% 100%;
|
||||
--foreground: 222.2 84% 4.9%;
|
||||
--card: 0 0% 100%;
|
||||
--card-foreground: 222.2 84% 4.9%;
|
||||
--popover: 0 0% 100%;
|
||||
--popover-foreground: 222.2 84% 4.9%;
|
||||
--primary: 217 91% 60%;
|
||||
--primary-foreground: 210 40% 98%;
|
||||
--secondary: 210 40% 96.1%;
|
||||
--secondary-foreground: 222.2 47.4% 11.2%;
|
||||
--muted: 210 40% 96.1%;
|
||||
--muted-foreground: 215.4 16.3% 46.9%;
|
||||
--accent: 210 40% 96.1%;
|
||||
--accent-foreground: 222.2 47.4% 11.2%;
|
||||
--destructive: 0 84.2% 60.2%;
|
||||
--destructive-foreground: 210 40% 98%;
|
||||
--border: 214.3 31.8% 91.4%;
|
||||
--input: 214.3 31.8% 91.4%;
|
||||
--ring: 217 91% 60%;
|
||||
--radius: 0.5rem;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--background: 224 71% 4%;
|
||||
--foreground: 213 31% 91%;
|
||||
--card: 224 71% 6%;
|
||||
--card-foreground: 213 31% 91%;
|
||||
--popover: 224 71% 6%;
|
||||
--popover-foreground: 213 31% 91%;
|
||||
--primary: 217 91% 60%;
|
||||
--primary-foreground: 213 31% 91%;
|
||||
--secondary: 222 47% 11%;
|
||||
--secondary-foreground: 213 31% 91%;
|
||||
--muted: 223 47% 11%;
|
||||
--muted-foreground: 215.4 16.3% 56.9%;
|
||||
--accent: 216 34% 17%;
|
||||
--accent-foreground: 213 31% 91%;
|
||||
--destructive: 0 63% 31%;
|
||||
--destructive-foreground: 213 31% 91%;
|
||||
--border: 216 34% 17%;
|
||||
--input: 216 34% 17%;
|
||||
--ring: 217 91% 60%;
|
||||
}
|
||||
}
|
||||
|
||||
@layer base {
|
||||
* {
|
||||
@apply border-border;
|
||||
}
|
||||
body {
|
||||
@apply bg-background text-foreground;
|
||||
font-feature-settings: "rlig" 1, "calt" 1;
|
||||
}
|
||||
}
|
||||
36
src/app/icon0.svg
Normal file
36
src/app/icon0.svg
Normal file
@@ -0,0 +1,36 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="1000" height="1000"><g clip-path="url(#SvgjsClipPath1209)"><rect width="1000" height="1000" fill="#ffffff"></rect><g transform="matrix(9.25540316264299,0,0,9.25540316264299,100,100)"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="86.435997" height="86.435997"><svg version="1.1" viewBox="0 0 86.435997 86.435997" id="svg188" sodipodi:docname="logo-flower.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs id="defs192"><clipPath id="SvgjsClipPath1209"><rect width="1000" height="1000" x="0" y="0" rx="500" ry="500"></rect></clipPath></defs>
|
||||
<sodipodi:namedview id="namedview190" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="5.6893399" inkscape:cx="83.489475" inkscape:cy="69.515973" inkscape:window-width="1864" inkscape:window-height="1131" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg188"></sodipodi:namedview>
|
||||
<!-- Flower -->
|
||||
<g fill="#000000" id="g186" transform="translate(-1.782,-1.782)">
|
||||
<g id="g184">
|
||||
<circle fill="#000000" cx="45" cy="44.999001" r="5.277" id="circle148"></circle>
|
||||
<g id="g182">
|
||||
<g id="g152">
|
||||
<path fill="#0d47a1" class="blue1" d="m 45.214,33.672 c 24.117,-31.271 0.369,-31.89 0.369,-31.89 0,0 -23.756,0.069 -0.369,31.89 z" id="path150"></path>
|
||||
</g>
|
||||
<g id="g156">
|
||||
<path fill="#1976d2" class="blue2" d="M 37.141,36.837 C 32.082,-2.327 14.853,14.027 14.853,14.027 c 0,0 -16.749,16.847 22.288,22.81 z" id="path154"></path>
|
||||
</g>
|
||||
<g id="g160">
|
||||
<path fill="#2196f3" class="blue3" d="M 33.67,44.786 C 2.401,20.667 1.782,44.416 1.782,44.416 c 0,0 0.069,23.757 31.888,0.37 z" id="path158"></path>
|
||||
</g>
|
||||
<g id="g164">
|
||||
<path fill="#00bcd4" class="blue4" d="m 36.837,52.859 c -39.166,5.059 -22.81,22.288 -22.81,22.288 0,0 16.847,16.752 22.81,-22.288 z" id="path162"></path>
|
||||
</g>
|
||||
<g id="g168">
|
||||
<path fill="#4fc3f7" class="blue5" d="m 44.785,56.33 c -24.118,31.271 -0.369,31.888 -0.369,31.888 0,0 23.755,-0.069 0.369,-31.888 z" id="path166"></path>
|
||||
</g>
|
||||
<g id="g172">
|
||||
<path fill="#3f51b5" class="blue6" d="m 52.859,53.164 c 5.057,39.164 22.287,22.81 22.287,22.81 0,0 16.75,-16.847 -22.287,-22.81 z" id="path170"></path>
|
||||
</g>
|
||||
<g id="g176">
|
||||
<path fill="#039be5" class="blue7" d="m 56.33,45.216 c 31.271,24.117 31.888,0.369 31.888,0.369 0,0 -0.07,-23.756 -31.888,-0.369 z" id="path174"></path>
|
||||
</g>
|
||||
<g id="g180">
|
||||
<path fill="#64b5f6" class="blue8" d="m 53.162,37.142 c 39.166,-5.061 22.811,-22.289 22.811,-22.289 0,0 -16.847,-16.749 -22.811,22.289 z" id="path178"></path>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg></svg></g></g></svg>
|
||||
|
After Width: | Height: | Size: 3.2 KiB |
BIN
src/app/icon1.png
Normal file
BIN
src/app/icon1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.9 KiB |
21
src/app/layout.tsx
Normal file
21
src/app/layout.tsx
Normal file
@@ -0,0 +1,21 @@
|
||||
import '@rainbow-me/rainbowkit/styles.css';
|
||||
import '@/app/globals.css';
|
||||
import { Providers } from '@/components/providers';
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<head>
|
||||
<title>Liquidity Party</title>
|
||||
<meta name="description" content="Decentralized Exchange for Multi-Asset AMM Pools" />
|
||||
</head>
|
||||
<body className="min-h-screen">
|
||||
<Providers>{children}</Providers>
|
||||
</body>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
21
src/app/manifest.json
Normal file
21
src/app/manifest.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "Liquidity Party",
|
||||
"short_name": "Liquidity Party",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/web-app-manifest-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "/web-app-manifest-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
||||
31
src/app/page.tsx
Normal file
31
src/app/page.tsx
Normal file
@@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';
|
||||
import { SwapForm } from '@/components/swap-form';
|
||||
|
||||
export default function HomePage() {
|
||||
const { t } = useTranslation();
|
||||
|
||||
return (
|
||||
<div className="max-w-2xl mx-auto">
|
||||
<Tabs defaultValue="swap" className="w-full">
|
||||
<TabsList className="grid w-full grid-cols-2 mb-8">
|
||||
<TabsTrigger value="swap">{t('nav.swap')}</TabsTrigger>
|
||||
<TabsTrigger value="stake">{t('nav.stake')}</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
<TabsContent value="swap">
|
||||
<SwapForm />
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value="stake">
|
||||
<div className="text-center py-12 text-muted-foreground">
|
||||
<h2 className="text-2xl font-semibold mb-2">{t('stake.title')}</h2>
|
||||
<p>{t('stake.comingSoon')}</p>
|
||||
</div>
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user