Skip to content

Commit

Permalink
Merge pull request creativetimofficial#11 from MeridjaNassim/LandingP…
Browse files Browse the repository at this point in the history
…age/NextJS

Added NextJS Landing Page using Tailwind Starter Kit
  • Loading branch information
einazare authored Oct 7, 2020
2 parents f0845ed + d9f62d6 commit 30ed025
Show file tree
Hide file tree
Showing 21 changed files with 6,700 additions and 3 deletions.
37 changes: 37 additions & 0 deletions Landing Page/next-landing-page/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# local env files
.env.local
.env.development.local
.env.test.local
.env.production.local

# vercel
.vercel

#IDE
.vscode/*
41 changes: 41 additions & 0 deletions Landing Page/next-landing-page/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# TypeScript Next.js example

This is a really simple project that shows the usage of Next.js with TypeScript.

## Deploy your own

Deploy the example using [Vercel](https://vercel.com):

[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/vercel/next.js/tree/canary/examples/with-typescript)

## How to use it?

Execute [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app) with [npm](https://docs.npmjs.com/cli/init) or [Yarn](https://yarnpkg.com/lang/en/docs/cli/create/) to bootstrap the example:

```bash
npx create-next-app --example with-typescript with-typescript-app
# or
yarn create next-app --example with-typescript with-typescript-app
```

Deploy it to the cloud with [Vercel](https://vercel.com/import?filter=next.js&utm_source=github&utm_medium=readme&utm_campaign=next-example) ([Documentation](https://nextjs.org/docs/deployment)).

## Notes

This example shows how to integrate the TypeScript type system into Next.js. Since TypeScript is supported out of the box with Next.js, all we have to do is to install TypeScript.

```
npm install --save-dev typescript
```

To enable TypeScript's features, we install the type declarations for React and Node.

```
npm install --save-dev @types/react @types/react-dom @types/node
```

When we run `next dev` the next time, Next.js will start looking for any `.ts` or `.tsx` files in our project and builds it. It even automatically creates a `tsconfig.json` file for our project with the recommended settings.

Next.js has built-in TypeScript declarations, so we'll get autocompletion for Next.js' modules straight away.

A `type-check` script is also added to `package.json`, which runs TypeScript's `tsc` CLI in `noEmit` mode to run type-checking separately. You can then include this, for example, in your `test` scripts.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions Landing Page/next-landing-page/assets/styles/index.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/* purgecss start ignore */
@tailwind base;

@tailwind components;
/* purgecss end ignore */

@tailwind utilities;

@layer base {
html,body {
width: 100%;
height: 100%;
}
}
Empty file.
142 changes: 142 additions & 0 deletions Landing Page/next-landing-page/components/Footer.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
import React, { ReactElement } from 'react'


function Footer(): ReactElement {
return (
<footer className="relative bg-gray-300 pt-8 pb-6">
<div
className="bottom-auto top-0 left-0 right-0 w-full absolute pointer-events-none overflow-hidden -mt-20"
style={{ height: "80px", transform: "translateZ(0)" }}
>
<svg
className="absolute bottom-0 overflow-hidden"
xmlns="http://www.w3.org/2000/svg"
preserveAspectRatio="none"
version="1.1"
viewBox="0 0 2560 100"
x="0"
y="0"
>
<polygon
className="text-gray-300 fill-current"
points="2560 0 2560 100 0 100"
></polygon>
</svg>
</div>
<div className="container mx-auto px-4">
<div className="flex flex-wrap">
<div className="w-full lg:w-6/12 px-4">
<h4 className="text-3xl font-semibold">
Let's keep in touch!
</h4>
<h5 className="text-lg mt-0 mb-2 text-gray-700">
Find us on any of these platforms, we respond 1-2 business days.
</h5>
<div className="mt-6">
<button
className="bg-white text-blue-400 shadow-lg font-normal h-10 w-10 items-center justify-center align-center rounded-full outline-none focus:outline-none mr-2 p-3"
type="button"
>
<i className="flex fab fa-twitter"></i>
</button>
<button
className="bg-white text-blue-600 shadow-lg font-normal h-10 w-10 items-center justify-center align-center rounded-full outline-none focus:outline-none mr-2 p-3"
type="button"
>
<i className="flex fab fa-facebook-square"></i>
</button>
<button
className="bg-white text-pink-400 shadow-lg font-normal h-10 w-10 items-center justify-center align-center rounded-full outline-none focus:outline-none mr-2 p-3"
type="button"
>
<i className="flex fab fa-dribbble"></i>
</button>
<button
className="bg-white text-gray-900 shadow-lg font-normal h-10 w-10 items-center justify-center align-center rounded-full outline-none focus:outline-none mr-2 p-3"
type="button"
>
<i className="flex fab fa-github"></i>
</button>
</div>
</div>
<div className="w-full lg:w-6/12 px-4">
<div className="flex flex-wrap items-top mb-6">
<div className="w-full lg:w-4/12 px-4 ml-auto">
<span className="block uppercase text-gray-600 text-sm font-semibold mb-2">
Useful Links
</span>
<ul className="list-unstyled">
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://www.creative-tim.com/presentation">About Us
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://blog.creative-tim.com">Blog
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://www.github.com/creativetimofficial">Github
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://www.creative-tim.com/bootstrap-themes/free">Free Products
</a>
</li>

</ul>
</div>
<div className="w-full lg:w-4/12 px-4">
<span className="block uppercase text-gray-600 text-sm font-semibold mb-2">
Other Resources
</span>
<ul className="list-unstyled">
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://github.com/creativetimofficial/argon-design-system/blob/master/LICENSE.md">MIT License
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://creative-tim.com/terms">Terms & Conditions
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://creative-tim.com/privacy">Privacy Policy
</a>
</li>
<li>
<a className="text-gray-700 hover:text-gray-900 font-semibold block pb-2 text-sm"
href="https://creative-tim.com/contact-us">Contact Us
</a>
</li>
</ul>

</div>
</div>
</div>
</div>
<hr className="my-6 border-gray-400" />
<div className="flex flex-wrap items-center md:justify-between justify-center">
<div className="w-full md:w-4/12 px-4 mx-auto text-center">
<div className="text-sm text-gray-600 font-semibold py-1">
Copyright © {new Date().getFullYear()}{" "}Tailwind Starter Kit by{" "}
<a
href="https://www.creative-tim.com"
className="text-gray-600 hover:text-gray-900"
>
Creative Tim
</a>.
</div>
</div>
</div>
</div>
</footer>
)
}

export default Footer
33 changes: 33 additions & 0 deletions Landing Page/next-landing-page/components/Layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import { PropsWithChildren } from 'react'
import Head from 'next/head'
import Navbar from './Navbar'
import Footer from './Footer'

interface Props {
title?: string,
transparent?: boolean
}

const Layout = (props: PropsWithChildren<Props>) => {


return (

<div>
<Head>
<title>{props.title}</title>
<meta charSet="utf-8" />
<meta name="viewport" content="initial-scale=1.0, width=device-width" />
</Head>
<header>
<Navbar transparent={true} />
</header>
<main>
{props.children}
</main>
<Footer></Footer>
</div>
)
}

export default Layout
Loading

0 comments on commit 30ed025

Please sign in to comment.