diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 45c5d97..264df1d 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,7 +1,10 @@ -import InitialScript from "@/components/InitialScript"; +import InitialScript from "@/components/layouts/InitialScript"; import { Geist, Geist_Mono } from "next/font/google"; import "./globals.css"; import { Metadata } from "next"; +import { getDefaultMetadata } from "@/utils/metadata"; +import Header from "@/components/layouts/Header"; +import Footer from "@/components/layouts/Footer"; const geistSans = Geist({ variable: "--font-geist-sans", @@ -13,10 +16,10 @@ const geistMono = Geist_Mono({ subsets: ["latin"], }); -export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", -}; +export async function generateMetadata(): Promise { + const metadata = await getDefaultMetadata(); + return metadata; +} export default function RootLayout({ children, @@ -41,7 +44,37 @@ export default function RootLayout({ - {children} +
+ + You are using an outdated browser. For a faster, safer browsing experience, upgrade for free today. + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+ {children} +
+
+ +
diff --git a/src/app/page.tsx b/src/app/page.tsx index 1c3a338..cc290bb 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,1792 +1,1334 @@ -"use client"; - export default function Home() { return ( <> -
- - You are using an outdated browser. For a faster, safer browsing experience, upgrade for free today. - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
- -
-
-
-
- -
-
-
-

Find Your Property

-
-
-
-
- - -
-
-
-
- - -
-
-
-
- - -
-
-
-
- -
-
-
-
- -
-
-
-
-

Price Range ($)

- -
-
-
-

Area (Sq Ft)

- -
-
-
-
-
-
-
-

Look for certain features

-
-
-
-
    -
  • - -
  • -
  • - -
  • -
  • - -
  • -
  • - -
  • -
  • - -
  • -
-
-
-
-
- -
-
-
+
-
+
+ -
-
-
-
-
- -
-

Various Locations

-

We have lots of properties in various locations available for purchase.

-
-
-
-
-
- -
-

No Commission

-

Opportunity to acquire a quality apartment for rent without having to pay any commission.

-
-
-
-
-
- -
-

View Apartments

-

View apartment listings with photos, HD videos, virtual tours, 3D floor plans etc.

-
-
-
+
+
+
+
+
+ +
+

Various Locations

+

We have lots of properties in various locations available for purchase.

+
+
+
+
+
+ +
+

No Commission

+

Opportunity to acquire a quality apartment for rent without having to pay any commission.

+
+
+
+
+
+ +
+

View Apartments

+

View apartment listings with photos, HD videos, virtual tours, 3D floor plans etc.

+
+
-
+
+
-
-
-
-

- Featured Properties -

-
-
    +
    +
    +
    +

    + Featured Properties +

    +
    + +
    +
    +
    +
    +
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - $5000\mo -
    -
    -

    - 401 Biscayne Boulevard, Miami -

    -
    -
      -
    • - - 480 Sq Ft -
    • -
    • - - 2 Bathrooms -
    • -
    • - - 2 Bedrooms -
    • -
    • - - 1 Garage -
    • -
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - $2500\mo -
    -
    -

    - 923 Folsom St, San Francisco -

    -
    -
      -
    • - - 535 Sq Ft -
    • -
    • - - 2 Bathrooms -
    • -
    • - - 3 Bedrooms -
    • -
    • - - 1 Garage -
    • -
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - 9340\mo -
    -
    -

    - 225 Maywood Dr, San Francisco -

    -
    -
      -
    • - - 435 Sq Ft -
    • -
    • - - 1 Bathroom -
    • -
    • - - 1 Bedroom -
    • -
    • - - 1 Garage -
    • -
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - $5550\mo -
    -
    -

    - 35 Pond St, New York -

    -
    -
      -
    • - - 430 Sq Ft -
    • -
    • - - 2 Bathrooms -
    • -
    • - - 3 Bedrooms -
    • -
    • - - 1 Garage -
    • -
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - $2520\mo -
    -
    -

    - 182 3rd St, Seattle -

    -
    -
      -
    • - - 630 Sq Ft -
    • -
    • - - 3 Bathrooms -
    • -
    • - - 3 Bedrooms -
    • -
    • - - 2 Garages -
    • -
    -
    -
    -
    -
    -
    -
    - - - - -
    -
    - $5000\mo -
    -
    -

    - 623 Willow Rd, Dallas -

    -
    -
      -
    • - - 530 Sq Ft -
    • -
    • - - 2 Bathrooms -
    • -
    • - - 2 Bedrooms -
    • -
    • - - 2 Garages -
    • -
    -
    -
    - -
    -
    -
    - -
    -
    -
    -
    -
    -
    -
    - 860 -
    -

    Properties on Map

    -
    -
    -
    -
    -
    -
    29
    -
    -

    Professional Agents

    -
    -
    -
    -
    -
    -
    10
    - k -
    -

    Happy Clients

    -
    -
    -
    -
    -
    -
    15
    -
    -

    New Apartments Daily

    -
    -
    -
    -
    -
    -
    - -
    - -
    - -
    -
    -

    - What People Say -

    -
    -
    -
    -
    -
    - -
    -

    - Your property managers have been active in their response to repairs and always patient with our - frustrations. You have always found us wonderful tenants. -

    -
    -
    - -
    -

    Karen Sanders

    -

    Pharmacist

    -
    -
    -
    -
    -
    -
    - -
    -

    - We recently rented an apartment through your site, and have been looked after by James Thompson. - He provided us with utmost support on every property issue. -

    -
    -
    - -
    -

    Walter Williams

    -

    Lifeguard

    -
    -
    -
    -
    -
    -
    - -
    -

    - I have always found your team to be extremely prompt and professional with all dealings I have had - with them. You always keep me updated on the progress. -

    -
    -
    - -
    -

    Kate Anderson

    -

    Decorator

    -
    -
    -
    -
    -
    -
    - -
    -

    - Your advice and support from our initial meeting through liaising with current tenants and a - polished marketing program all contributed to a great sale process, thanks! -

    -
    -
    - -
    -

    Peter Smith

    -

    Historian

    -
    -
    -
    -
    -
    - -
    - -
    - -
    -
    -
    -
    -
    -

    Get a Free Consultation

    - -
    +
    +
    +
    -
    -
    -
    - - -
    -
    -
    -
    - - -
    -
    -
    - -
    + + + + +
    +
    + $2500\mo +
    +
    +

    + 923 Folsom St, San Francisco +

    +
    +
      +
    • + + 535 Sq Ft +
    • +
    • + + 2 Bathrooms +
    • +
    • + + 3 Bedrooms +
    • +
    • + + 1 Garage +
    • +
    +
    +
    +
    +
    +
    +
    + + + + +
    +
    + 9340\mo +
    +
    +

    + 225 Maywood Dr, San Francisco +

    +
    +
      +
    • + + 435 Sq Ft +
    • +
    • + + 1 Bathroom +
    • +
    • + + 1 Bedroom +
    • +
    • + + 1 Garage +
    • +
    +
    +
    +
    +
    +
    +
    + + + + +
    +
    + $5550\mo +
    +
    +

    + 35 Pond St, New York +

    +
    +
      +
    • + + 430 Sq Ft +
    • +
    • + + 2 Bathrooms +
    • +
    • + + 3 Bedrooms +
    • +
    • + + 1 Garage +
    • +
    +
    +
    +
    +
    +
    +
    + + + + +
    +
    + $2520\mo +
    +
    +

    + 182 3rd St, Seattle +

    +
    +
      +
    • + + 630 Sq Ft +
    • +
    • + + 3 Bathrooms +
    • +
    • + + 3 Bedrooms +
    • +
    • + + 2 Garages +
    • +
    +
    +
    +
    +
    +
    +
    + + + + +
    +
    + $5000\mo +
    +
    +

    + 623 Willow Rd, Dallas +

    +
    +
      +
    • + + 530 Sq Ft +
    • +
    • + + 2 Bathrooms +
    • +
    • + + 2 Bedrooms +
    • +
    • + + 2 Garages +
    • +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    + 860 +
    +

    Properties on Map

    +
    +
    +
    +
    +
    +
    29
    +
    +

    Professional Agents

    +
    +
    +
    +
    +
    +
    10
    + k +
    +

    Happy Clients

    +
    +
    +
    +
    +
    +
    15
    +
    +

    New Apartments Daily

    +
    +
    +
    +
    +
    +
    + +
    + +
    + +
    +
    +

    + What People Say +

    +
    +
    +
    +
    +
    + +
    +

    + Your property managers have been active in their response to repairs and always patient with our + frustrations. You have always found us wonderful tenants. +

    +
    +
    + +
    +

    Karen Sanders

    +

    Pharmacist

    +
    -
    -
    -
    - -
    -
    -

    - A MyHome salesperson is more than just a “sales person.” They act on your behalf as your - agent, providing you with advice and guidance and doing a job – helping you buy or sell a - home. While it is true they get paid for what they do, so do other professions that provide - advice, guidance. -

    -
    -
    -
    - -
    - -
    -
    -

    - The answer to the question is YES! There are tons of reasons why you should talk with a bank - and get pre-approved before looking at homes. First and foremost, talking with a bank before - looking at homes can help you understand exactly how much you can afford. There is no reason - to look at homes that are listed for $250,000 if you can only afford up to $200,000. -

    -
    -
    -
    - -
    - -
    -
    -

    - Buying a home can be a very solid investment. This being said, renting can also be a better - option for some, depending on the circumstances. The current interest rates are incredible. A - 30-year FHA mortgage can be locked in at a rate of around 3.5%. Since the interest rates are - so low, it actually can be cheaper to pay a mortgage right now than paying rent. -

    -
    -
    -
    - -
    - -
    -
    -

    - Of course you can, but the probability isn’t very high. The same can be said about a - rent-to-own property. A common question from home buyers is whether rent-to-owns exist or - whether an owner would consider that option. They are out there, but there are somethings that - you need to know before agreeing to a rent-to-own. -

    -
    -
    -
    +
    +
    +
    + +
    +

    + We recently rented an apartment through your site, and have been looked after by James Thompson. He + provided us with utmost support on every property issue. +

    +
    +
    + +
    +

    Walter Williams

    +

    Lifeguard

    +
    +
    +
    +
    +
    +
    + +
    +

    + I have always found your team to be extremely prompt and professional with all dealings I have had + with them. You always keep me updated on the progress. +

    +
    +
    + +
    +

    Kate Anderson

    +

    Decorator

    +
    +
    +
    +
    +
    +
    + +
    +

    + Your advice and support from our initial meeting through liaising with current tenants and a + polished marketing program all contributed to a great sale process, thanks! +

    +
    +
    + +
    +

    Peter Smith

    +

    Historian

    +
    -
    +
+
-
-
-

- Latest Blog Posts -

-
-
- -
-
- -
-
- -
+
+
- -
-
+
+
+ +
+
+
+
+
+

Get a Free Consultation

-
-
-
- - -
-

- Newsletter Signup -

-

Enter your e-mail to get the latest news of MyHome

-
- - -
-
- +
+
+
+ + +
+
+
+
+ + +
+
+
+ +
-
    -
  • - -
  • -
  • - -
  • -
  • - -
  • -
  • - -
  • -
-
-
+
+
+
+ +
+
+

+ A MyHome salesperson is more than just a “sales person.” They act on your behalf as your agent, + providing you with advice and guidance and doing a job – helping you buy or sell a home. While + it is true they get paid for what they do, so do other professions that provide advice, + guidance. +

+
+
+
-
-
-
-
-

- MyHome ©  - -   - Privacy Policy -

+
+ +
+
+

+ The answer to the question is YES! There are tons of reasons why you should talk with a bank and + get pre-approved before looking at homes. First and foremost, talking with a bank before looking + at homes can help you understand exactly how much you can afford. There is no reason to look at + homes that are listed for $250,000 if you can only afford up to $200,000. +

+
+
+
+ +
+ +
+
+

+ Buying a home can be a very solid investment. This being said, renting can also be a better + option for some, depending on the circumstances. The current interest rates are incredible. A + 30-year FHA mortgage can be locked in at a rate of around 3.5%. Since the interest rates are so + low, it actually can be cheaper to pay a mortgage right now than paying rent. +

+
+
+
+ +
+ +
+
+

+ Of course you can, but the probability isn’t very high. The same can be said about a rent-to-own + property. A common question from home buyers is whether rent-to-owns exist or whether an owner + would consider that option. They are out there, but there are somethings that you need to know + before agreeing to a rent-to-own. +

+
+
+
-
+
+
+ +
+
+

+ Latest Blog Posts +

+
+
+
+ +
+
+ +
+
+
- - + +
-
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+ +
+
+
+ + +
+

+ Newsletter Signup +

+

Enter your e-mail to get the latest news of MyHome

+
+
+ + +
+
+ +
+
+
    +
  • + +
  • +
  • + +
  • +
  • + +
  • +
  • + +
  • +
+
+
+
+
); } diff --git a/src/components/layouts/Footer.tsx b/src/components/layouts/Footer.tsx new file mode 100644 index 0000000..8b57af7 --- /dev/null +++ b/src/components/layouts/Footer.tsx @@ -0,0 +1,25 @@ +export default function Footer() { + return ( + + ); +} diff --git a/src/components/layouts/Header.tsx b/src/components/layouts/Header.tsx new file mode 100644 index 0000000..f1816a6 --- /dev/null +++ b/src/components/layouts/Header.tsx @@ -0,0 +1,410 @@ +export default function Header() { + return ( +
+
+ +
+
+ ); +} diff --git a/src/components/InitialScript.tsx b/src/components/layouts/InitialScript.tsx similarity index 100% rename from src/components/InitialScript.tsx rename to src/components/layouts/InitialScript.tsx diff --git a/src/utils/metadata.ts b/src/utils/metadata.ts new file mode 100644 index 0000000..6e8ae70 --- /dev/null +++ b/src/utils/metadata.ts @@ -0,0 +1,36 @@ +import { Metadata } from "next"; +import { headers } from "next/headers"; + +export async function getDefaultMetadata(): Promise { + const headersList = await headers(); + const mainUrl = headersList.get("x-main-url") ?? ""; + const fullUrl = headersList.get("x-full-url") ?? ""; + const siteName = headersList.get("x-site-name") ?? ""; + const metaDesc = headersList.get("x-meta-desc") ?? ""; + + return { + metadataBase: new URL(mainUrl), + title: siteName, + description: metaDesc, + robots: { + index: true, + follow: true, + "max-image-preview": "large", + "max-snippet": -1, + "max-video-preview": -1, + }, + openGraph: { + siteName, + description: metaDesc, + type: "website", + locale: "en_US", + url: fullUrl, + }, + twitter: { + card: "summary_large_image", + }, + alternates: { + canonical: "./", + }, + }; +}