Skip to content

feat: add new landing page #273

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Feb 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,44 @@
import "@/styles/globals.css";
import { Metadata } from "next";
import { Inter } from "next/font/google";

const inter = Inter({ subsets: ["latin"] });

const data = {
description:
"Papermark is an open-source document sharing infrastructure. Free alternative to Docsend with custom domain. Manage secure document sharing with real-time analytics.",
title: "Papermark | The Open Source DocSend Alternative",
url: "/",
};

export const metadata: Metadata = {
metadataBase: new URL("https://www.papermark.io"),
title: data.title,
description: data.description,
openGraph: {
title: data.title,
description: data.description,
url: data.url,
siteName: "Papermark",
images: [
{
url: "/_static/meta-image.png",
width: 800,
height: 600,
},
],
locale: "en_US",
type: "website",
},
twitter: {
card: "summary_large_image",
title: data.title,
description: data.description,
creator: "@papermarkio",
images: ["/_static/meta-image.png"],
},
};

export default function RootLayout({
children,
}: {
Expand Down
1,078 changes: 1,078 additions & 0 deletions app/page.tsx

Large diffs are not rendered by default.

23 changes: 23 additions & 0 deletions components/shared/icons/producthunt.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import React from "react";

function ProductHuntIcon(
props: React.JSX.IntrinsicAttributes & React.SVGProps<SVGSVGElement>,
) {
return (
<svg viewBox="0 0 24 24" fill="none" {...props}>
<g clip-path="url(#clip0_9_7)">
<path
d="M15.2955 10.2563C15.2955 11.217 14.5125 12 13.5518 12H10.2563V8.5125H13.5518C14.5125 8.5125 15.2955 9.2955 15.2955 10.2563ZM23.625 12C23.625 18.4222 18.4215 23.625 12 23.625C5.5785 23.625 0.375 18.4215 0.375 12C0.375 5.57775 5.5785 0.375 12 0.375C18.4215 0.375 23.625 5.5785 23.625 12ZM17.6205 10.2563C17.6205 8.01075 15.7973 6.1875 13.5518 6.1875H7.93125V17.8125H10.2563V14.325H13.5518C15.7973 14.325 17.6205 12.5018 17.6205 10.2563Z"
fill="currentColor"
/>
</g>
<defs>
<clipPath id="clip0_9_7">
<rect width="24" height="24" fill="white" />
</clipPath>
</defs>
</svg>
);
}

export default ProductHuntIcon;
4 changes: 0 additions & 4 deletions components/web/navbar.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
import Link from "next/link";
import GitHubIcon from "@/components/shared/icons/github";

function classNames(...classes: any[]) {
return classes.filter(Boolean).join(" ");
}

export default function Navbar() {
return (
<>
Expand Down
1 change: 1 addition & 0 deletions middleware.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ export default async function middleware(req: NextRequest, ev: NextFetchEvent) {

if (
path !== "/" &&
path !== "/v1" &&
path !== "/register" &&
path !== "/privacy" &&
path !== "/oss-friends" &&
Expand Down
1 change: 0 additions & 1 deletion pages/index.tsx → pages/v1.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import Testimonials from "@/components/web/testimonials";
import Logos from "@/components/web/logos";
import Head from "next/head";
import Section3 from "@/components/web/section3";
import Banner from "@/components/web/banner-launch-week";

export default function Home() {
return (
Expand Down