Merge version_1 into main
Merge version_1 into main
This commit was merged in pull request #1.
This commit is contained in:
@@ -6,18 +6,49 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
||||
|
||||
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Webild components 2",
|
||||
description: "Generated by create next app",
|
||||
};
|
||||
const halant = Halant({
|
||||
variable: "--font-halant",
|
||||
subsets: ["latin"],
|
||||
weight: ["300", "400", "500", "600", "700"],
|
||||
});
|
||||
|
||||
const inter = Inter({
|
||||
variable: "--font-inter",
|
||||
subsets: ["latin"],
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "TradeLog - Trading Journal & Performance Analytics",
|
||||
description: "Track trades, analyze performance metrics, and document lessons learned. Minimalist trading journal for serious traders.",
|
||||
keywords: "trading journal, trade log, trading analytics, performance tracking, trading statistics",
|
||||
metadataBase: new URL("https://tradelog.example.com"),
|
||||
alternates: {
|
||||
canonical: "https://tradelog.example.com",
|
||||
},
|
||||
openGraph: {
|
||||
title: "TradeLog - Master Your Trading",
|
||||
description: "Record, analyze, and improve your trading with a clean minimalist journal designed for serious traders.",
|
||||
type: "website",
|
||||
siteName: "TradeLog",
|
||||
images: [
|
||||
{
|
||||
url: "https://tradelog.example.com/og-image.jpg",
|
||||
alt: "TradeLog Trading Journal Dashboard",
|
||||
},
|
||||
],
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image",
|
||||
title: "TradeLog - Trading Journal",
|
||||
description: "Track every trade, analyze your performance, and refine your strategy.",
|
||||
images: ["https://tradelog.example.com/twitter-image.jpg"],
|
||||
},
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true,
|
||||
},
|
||||
};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
@@ -26,7 +57,9 @@ export default function RootLayout({
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body className={`${inter.variable} antialiased`}>
|
||||
<body
|
||||
className={`${halant.variable} ${inter.variable} antialiased`}
|
||||
>
|
||||
<Tag />
|
||||
{children}
|
||||
<script
|
||||
@@ -38,4 +71,4 @@ export default function RootLayout({
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -70,32 +70,32 @@ export default function LessonsPage() {
|
||||
carouselItems={[
|
||||
{
|
||||
id: "lessons-carousel-1",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=3",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
{
|
||||
id: "lessons-carousel-2",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=4",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
{
|
||||
id: "lessons-carousel-3",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=5",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
{
|
||||
id: "lessons-carousel-4",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=6",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
{
|
||||
id: "lessons-carousel-5",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=7",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
{
|
||||
id: "lessons-carousel-6",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=8",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
]}
|
||||
|
||||
@@ -74,32 +74,32 @@ export default function HomePage() {
|
||||
carouselItems={[
|
||||
{
|
||||
id: "carousel-1",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=1",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
{
|
||||
id: "carousel-2",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=2",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
{
|
||||
id: "carousel-3",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=3",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
{
|
||||
id: "carousel-4",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=4",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
{
|
||||
id: "carousel-5",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=5",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
{
|
||||
id: "carousel-6",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/empowered-female-ceo-working-her-high-end-corporate-office_482257-122680.jpg?_wi=6",
|
||||
imageAlt: "minimalist dashboard interface",
|
||||
},
|
||||
]}
|
||||
@@ -131,11 +131,11 @@ export default function HomePage() {
|
||||
title: "Trade Entry Form",
|
||||
description: "Quickly log trades with date, currency pair, entry price, exit price, and profit/loss. Intuitive interface for rapid data entry.",
|
||||
phoneOne: {
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-harvesting-vegetables_23-2148568616.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-harvesting-vegetables_23-2148568616.jpg?_wi=1",
|
||||
imageAlt: "form input table interface",
|
||||
},
|
||||
phoneTwo: {
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-harvesting-vegetables_23-2148568616.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-harvesting-vegetables_23-2148568616.jpg?_wi=2",
|
||||
imageAlt: "form input table interface",
|
||||
},
|
||||
},
|
||||
@@ -144,11 +144,11 @@ export default function HomePage() {
|
||||
title: "Performance Analytics",
|
||||
description: "Real-time calculations of win rate, total profit/loss, average trade size, and key metrics. Visualize your success.",
|
||||
phoneOne: {
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-meeting-sharing-ideas-corporate-growth_482257-123661.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-meeting-sharing-ideas-corporate-growth_482257-123661.jpg?_wi=1",
|
||||
imageAlt: "profit loss chart graph",
|
||||
},
|
||||
phoneTwo: {
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-meeting-sharing-ideas-corporate-growth_482257-123661.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-meeting-sharing-ideas-corporate-growth_482257-123661.jpg?_wi=2",
|
||||
imageAlt: "profit loss chart graph",
|
||||
},
|
||||
},
|
||||
@@ -157,11 +157,11 @@ export default function HomePage() {
|
||||
title: "Reflection Journal",
|
||||
description: "Document lessons learned from each trade. Build trading wisdom over time with structured notes and insights.",
|
||||
phoneOne: {
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=1",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
phoneTwo: {
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/smart-home-management_23-2148628798.jpg?_wi=2",
|
||||
imageAlt: "notes journal interface",
|
||||
},
|
||||
},
|
||||
|
||||
@@ -70,32 +70,32 @@ export default function StatisticsPage() {
|
||||
carouselItems={[
|
||||
{
|
||||
id: "stats-carousel-1",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=1",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
{
|
||||
id: "stats-carousel-2",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=2",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
{
|
||||
id: "stats-carousel-3",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=3",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
{
|
||||
id: "stats-carousel-4",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=4",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
{
|
||||
id: "stats-carousel-5",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=5",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
{
|
||||
id: "stats-carousel-6",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/business-man-with-beard-working-hard-his-desk-office-motivated-man_482257-18758.jpg?_wi=6",
|
||||
imageAlt: "trading analytics dashboard",
|
||||
},
|
||||
]}
|
||||
|
||||
@@ -67,32 +67,32 @@ export default function TradeLogPage() {
|
||||
carouselItems={[
|
||||
{
|
||||
id: "trade-carousel-1",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=1",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
{
|
||||
id: "trade-carousel-2",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=2",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
{
|
||||
id: "trade-carousel-3",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=3",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
{
|
||||
id: "trade-carousel-4",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=4",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
{
|
||||
id: "trade-carousel-5",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=5",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
{
|
||||
id: "trade-carousel-6",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/professional-dashboard-user-panel_23-2148359898.jpg?_wi=6",
|
||||
imageAlt: "trading journal interface",
|
||||
},
|
||||
]}
|
||||
|
||||
Reference in New Issue
Block a user