8

Github chore: added Next.js (#43) · juzhiyuan/blog@34c5f4b · GitHub

 3 years ago
source link: https://github.com/juzhiyuan/blog/commit/34c5f4b1133cfde3888dbcb5225719329c48c5e4
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

added Next.js (#43) · juzhiyuan/blog@34c5f4b · GitHubPermalink

Browse files

chore: added Next.js (#43)

juzhiyuan

committed 6 hours ago

Verified

1 parent 96d623b commit 34c5f4b1133cfde3888dbcb5225719329c48c5e4
Showing with 2,196 additions and 0 deletions.

@@ -0,0 +1,34 @@

# 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

@@ -0,0 +1 @@

# Git Keep file

File renamed without changes.

@@ -0,0 +1,2 @@

/// <reference types="next" />

/// <reference types="next/types/global" />

@@ -0,0 +1,19 @@

{

"name": "blog",

"version": "0.1.0",

"private": true,

"scripts": {

"dev": "next dev",

"build": "next build",

"start": "next start"

},

"dependencies": {

"next": "10.2.3",

"react": "17.0.2",

"react-dom": "17.0.2"

},

"devDependencies": {

"@types/react": "17.0.11",

"typescript": "4.3.2"

}

}

@@ -0,0 +1,7 @@

import '../styles/globals.css'

import type { AppProps } from 'next/app'

function MyApp({ Component, pageProps }: AppProps) {

return <Component {...pageProps} />

}

export default MyApp

@@ -0,0 +1,10 @@

// Next.js API route support: https://nextjs.org/docs/api-routes/introduction

import type { NextApiRequest, NextApiResponse } from 'next'

type Data = {

name: string

}

export default (req: NextApiRequest, res: NextApiResponse<Data>) => {

res.status(200).json({ name: 'John Doe' })

}

@@ -0,0 +1,69 @@

import Head from 'next/head'

import Image from 'next/image'

import styles from '../styles/Home.module.css'

export default function Home() {

return (

<div className={styles.container}>

<Head>

<title>Create Next App</title>

<meta name="description" content="Generated by create next app" />

<link rel="icon" href="/favicon.ico" />

</Head>

<main className={styles.main}>

<h1 className={styles.title}>

Welcome to <a href="https://nextjs.org">Next.js!</a>

</h1>

<p className={styles.description}>

Get started by editing{' '}

<code className={styles.code}>pages/index.js</code>

</p>

<div className={styles.grid}>

<a href="https://nextjs.org/docs" className={styles.card}>

<h2>Documentation →</h2>

<p>Find in-depth information about Next.js features and API.</p>

</a>

<a href="https://nextjs.org/learn" className={styles.card}>

<h2>Learn →</h2>

<p>Learn about Next.js in an interactive course with quizzes!</p>

</a>

<a

href="https://github.com/vercel/next.js/tree/master/examples"

className={styles.card}

>

<h2>Examples →</h2>

<p>Discover and deploy boilerplate example Next.js projects.</p>

</a>

<a

href="https://vercel.com/new?utm_source=create-next-app&utm_medium=default-template&utm_campaign=create-next-app"

className={styles.card}

>

<h2>Deploy →</h2>

<p>

Instantly deploy your Next.js site to a public URL with Vercel.

</p>

</a>

</div>

</main>

<footer className={styles.footer}>

<a

href="https://vercel.com?utm_source=create-next-app&utm_medium=default-template&utm_campaign=create-next-app"

target="_blank"

rel="noopener noreferrer"

>

Powered by{' '}

<span className={styles.logo}>

<Image src="/vercel.svg" alt="Vercel Logo" width={72} height={16} />

</span>

</a>

</footer>

</div>

)

}

Binary file not shown.

@@ -0,0 +1,4 @@

<svg width="283" height="64" viewBox="0 0 283 64" fill="none"

xmlns="http://www.w3.org/2000/svg">

<path d="M141.04 16c-11.04 0-19 7.2-19 18s8.96 18 20 18c6.67 0 12.55-2.64 16.19-7.09l-7.65-4.42c-2.02 2.21-5.09 3.5-8.54 3.5-4.79 0-8.86-2.5-10.37-6.5h28.02c.22-1.12.35-2.28.35-3.5 0-10.79-7.96-17.99-19-17.99zm-9.46 14.5c1.25-3.99 4.67-6.5 9.45-6.5 4.79 0 8.21 2.51 9.45 6.5h-18.9zM248.72 16c-11.04 0-19 7.2-19 18s8.96 18 20 18c6.67 0 12.55-2.64 16.19-7.09l-7.65-4.42c-2.02 2.21-5.09 3.5-8.54 3.5-4.79 0-8.86-2.5-10.37-6.5h28.02c.22-1.12.35-2.28.35-3.5 0-10.79-7.96-17.99-19-17.99zm-9.45 14.5c1.25-3.99 4.67-6.5 9.45-6.5 4.79 0 8.21 2.51 9.45 6.5h-18.9zM200.24 34c0 6 3.92 10 10 10 4.12 0 7.21-1.87 8.8-4.92l7.68 4.43c-3.18 5.3-9.14 8.49-16.48 8.49-11.05 0-19-7.2-19-18s7.96-18 19-18c7.34 0 13.29 3.19 16.48 8.49l-7.68 4.43c-1.59-3.05-4.68-4.92-8.8-4.92-6.07 0-10 4-10 10zm82.48-29v46h-9V5h9zM36.95 0L73.9 64H0L36.95 0zm92.38 5l-27.71 48L73.91 5H84.3l17.32 30 17.32-30h10.39zm58.91 12v9.69c-1-.29-2.06-.49-3.2-.49-5.81 0-10 4-10 10V51h-9V17h9v9.2c0-5.08 5.91-9.2 13.2-9.2z" fill="#000"/>

</svg>

@@ -0,0 +1,121 @@

.container {

min-height: 100vh;

padding: 0 0.5rem;

display: flex;

flex-direction: column;

justify-content: center;

align-items: center;

height: 100vh;

}

.main {

padding: 5rem 0;

flex: 1;

display: flex;

flex-direction: column;

justify-content: center;

align-items: center;

}

.footer {

width: 100%;

height: 100px;

border-top: 1px solid #eaeaea;

display: flex;

justify-content: center;

align-items: center;

}

.footer a {

display: flex;

justify-content: center;

align-items: center;

flex-grow: 1;

}

.title a {

color: #0070f3;

text-decoration: none;

}

.title a:hover,

.title a:focus,

.title a:active {

text-decoration: underline;

}

.title {

margin: 0;

line-height: 1.15;

font-size: 4rem;

}

.title,

.description {

text-align: center;

}

.description {

line-height: 1.5;

font-size: 1.5rem;

}

.code {

background: #fafafa;

border-radius: 5px;

padding: 0.75rem;

font-size: 1.1rem;

font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono,

Bitstream Vera Sans Mono, Courier New, monospace;

}

.grid {

display: flex;

align-items: center;

justify-content: center;

flex-wrap: wrap;

max-width: 800px;

margin-top: 3rem;

}

.card {

margin: 1rem;

padding: 1.5rem;

text-align: left;

color: inherit;

text-decoration: none;

border: 1px solid #eaeaea;

border-radius: 10px;

transition: color 0.15s ease, border-color 0.15s ease;

width: 45%;

}

.card:hover,

.card:focus,

.card:active {

color: #0070f3;

border-color: #0070f3;

}

.card h2 {

margin: 0 0 1rem 0;

font-size: 1.5rem;

}

.card p {

margin: 0;

font-size: 1.25rem;

line-height: 1.5;

}

.logo {

height: 1em;

margin-left: 0.5rem;

}

@media (max-width: 600px) {

.grid {

width: 100%;

flex-direction: column;

}

}

@@ -0,0 +1,16 @@

html,

body {

padding: 0;

margin: 0;

font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen,

Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;

}

a {

color: inherit;

text-decoration: none;

}

* {

box-sizing: border-box;

}

@@ -0,0 +1,19 @@

{

"compilerOptions": {

"target": "es5",

"lib": ["dom", "dom.iterable", "esnext"],

"allowJs": true,

"skipLibCheck": true,

"strict": true,

"forceConsistentCasingInFileNames": true,

"noEmit": true,

"esModuleInterop": true,

"module": "esnext",

"moduleResolution": "node",

"resolveJsonModule": true,

"isolatedModules": true,

"jsx": "preserve"

},

"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],

"exclude": ["node_modules"]

}

Large diffs are not rendered by default.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK