🎉 make change astrojs (.astro/content-assets.mjs, .astro/content-modules.mjs, .astro/data-store.json, .astro/settings.json, .astro/types.d.ts, .prettierrc, README.md, _error.tsx.bak, astro.config.mjs, bun.lockb, next.config.js, package.json, postcss.config.js, public/favicon.ico, src/app/layout.tsx, src/app/page.tsx, src/components/page.tsx, src/consts.ts, src/env.d.ts, src/layouts/Layout.astro, src/pages/index.astro, src/styles/globals.css, tailwind.config.ts, tsconfig.json)

This commit is contained in:
ひでまる 2025-01-27 23:44:16 +09:00
parent 0abde594ae
commit bdc72bb6ce
24 changed files with 185 additions and 200 deletions

View file

@ -0,0 +1 @@
export default new Map();

View file

@ -0,0 +1 @@
export default new Map();

1
.astro/data-store.json Normal file
View file

@ -0,0 +1 @@
[["Map",1,2],"meta::meta",["Map",3,4,5,6],"astro-version","5.1.10","astro-config-digest","{\"root\":{},\"srcDir\":{},\"publicDir\":{},\"outDir\":{},\"cacheDir\":{},\"compressHTML\":true,\"base\":\"/\",\"trailingSlash\":\"ignore\",\"output\":\"static\",\"scopedStyleStrategy\":\"attribute\",\"build\":{\"format\":\"directory\",\"client\":{},\"server\":{},\"assets\":\"_astro\",\"serverEntry\":\"entry.mjs\",\"redirects\":true,\"inlineStylesheets\":\"auto\",\"concurrency\":1},\"server\":{\"open\":false,\"host\":false,\"port\":4321,\"streaming\":true},\"redirects\":{},\"image\":{\"endpoint\":{\"route\":\"/_image\"},\"service\":{\"entrypoint\":\"astro/assets/services/sharp\",\"config\":{}},\"domains\":[],\"remotePatterns\":[]},\"devToolbar\":{\"enabled\":true},\"markdown\":{\"syntaxHighlight\":\"shiki\",\"shikiConfig\":{\"langs\":[],\"langAlias\":{},\"theme\":\"github-dark\",\"themes\":{},\"wrap\":false,\"transformers\":[]},\"remarkPlugins\":[],\"rehypePlugins\":[],\"remarkRehype\":{},\"gfm\":true,\"smartypants\":true},\"security\":{\"checkOrigin\":true},\"env\":{\"schema\":{},\"validateSecrets\":false},\"experimental\":{\"clientPrerender\":false,\"contentIntellisense\":false,\"responsiveImages\":false},\"legacy\":{\"collections\":false}}"]

5
.astro/settings.json Normal file
View file

@ -0,0 +1,5 @@
{
"_variables": {
"lastUpdateCheck": 1737986834616
}
}

1
.astro/types.d.ts vendored Normal file
View file

@ -0,0 +1 @@
/// <reference types="astro/client" />

11
.prettierrc Normal file
View file

@ -0,0 +1,11 @@
{
"printWidth": 80,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": false,
"trailingComma": "es5",
"bracketSpacing": true,
"arrowParens": "avoid",
"proseWrap": "always"
}

View file

@ -1,36 +1,30 @@
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
# Astroで構築されたプロジェクト
## Getting Started
First, run the development server:
## 開発サーバー起動
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
## ビルドおよび静的エクスポート
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
```bash
npm run build
```
This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
生成された`dist`ディレクトリを配信することで静的サイトとして公開できます。
## Learn More
To learn more about Next.js, take a look at the following resources:
To learn more about Astro, take a look at the following resources:
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
- [Astro Documentation](https://docs.astro.build) - learn about Astro features and API.
- [Learn Astro](https://docs.astro.build/en/getting-started/) - an interactive Astro tutorial.
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
You can check out [the Astro GitHub repository](https://github.com/withastro/astro) - your feedback and contributions are welcome!
## Deploy on Vercel
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
The easiest way to deploy your Astro app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=astro&utm_source=create-astro-app&utm_campaign=create-astro-app-readme) from the creators of Astro.
Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
Check out our [Astro deployment documentation](https://docs.astro.build/en/guides/deploy/) for more details.

View file

@ -1,28 +0,0 @@
import { GetServerSideProps, NextPage } from "next";
import Page from "../components/page";
interface ErrorPageProps {
statusCode: number;
}
const CustomError: NextPage<ErrorPageProps> = ({ statusCode }) => {
return (
<Error
statusCode={statusCode}
title={statusCode === 410 ? <Page /> : undefined}
/>
);
};
const getServerSideProps: GetServerSideProps = async ({ res, query }) => {
const statusCode = 410;
res.statusCode = statusCode;
return {
props: {
statusCode,
},
};
};
export default CustomError;
export { getServerSideProps };

9
astro.config.mjs Normal file
View file

@ -0,0 +1,9 @@
import { defineConfig } from "astro/config";
import tailwind from "@astrojs/tailwind";
import icon from "astro-icon";
export default defineConfig({
integrations: [tailwind(), icon()],
output: "static",
});

BIN
bun.lockb

Binary file not shown.

View file

@ -1,4 +0,0 @@
/** @type {import('next').NextConfig} */
const nextConfig = { output: "export" };
module.exports = nextConfig;

View file

@ -3,25 +3,30 @@
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
"dev": "astro dev",
"build": "astro build",
"start": "astro preview",
"lint": "next lint",
"export": "next export"
},
"dependencies": {
"react": "^18",
"react-dom": "^18",
"next": "14.0.4"
"@astrojs/tailwind": "^3.0.0",
"astro": "^5.1.10",
"astro-icon": "^1.1.5",
"prettier-plugin-astro": "^0.14.1"
},
"devDependencies": {
"typescript": "^5",
"@iconify-json/game-icons": "^1.2.1",
"@iconify-json/pixelarticons": "^1.2.2",
"@iconify-json/tabler": "^1.2.15",
"@types/node": "^20",
"@types/react": "^18",
"@types/react-dom": "^18",
"autoprefixer": "^10.0.1",
"eslint": "^8",
"postcss": "^8",
"tailwindcss": "^3.3.0",
"eslint": "^8",
"eslint-config-next": "14.0.4"
}
"typescript": "^5"
},
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
}

View file

@ -1,6 +0,0 @@
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
}

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View file

@ -1,22 +0,0 @@
import type { Metadata } from "next";
import { Inter } from "next/font/google";
import "./globals.css";
const inter = Inter({ subsets: ["latin"] });
export const metadata: Metadata = {
title: "ぷよすきーの墓標",
description: "一代目ぷよすきーは滅んでしまったようだ",
};
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="ja">
<body className={inter.className}>{children}</body>
</html>
);
}

View file

@ -1,5 +0,0 @@
import Page from "../components/page";
export default function MyPage() {
return <Page />;
}

View file

@ -1,58 +0,0 @@
import Image from "next/image";
export default function Home() {
return (
<>
<header className="w-full h-12 backdrop-blur-lg bg-black!">
<div className="flex justify-center items-center">
<Image
src={"/hidemaru-2023.png"}
height="50"
width="50"
alt="Logo"
className="block mx-auto"
/>
</div>
</header>
<main className="flex min-h-screen flex-col items-center justify-between p-12 sm:p-24">
<div className="relative flex place-items-center before:absolute before:h-[300px] before:w-[480px] before:-translate-x-1/2 before:rounded-full before:bg-gradient-radial before:from-white before:to-transparent before:blur-2xl before:content-[''] after:absolute after:-z-20 after:h-[180px] after:w-[240px] after:translate-x-1/3 after:bg-gradient-conic after:from-sky-200 after:via-blue-200 after:blur-2xl after:content-[''] before:dark:bg-gradient-to-br before:dark:from-transparent before:dark:to-blue-700 before:dark:opacity-10 after:dark:from-sky-900 after:dark:via-[#0141ff] after:dark:opacity-40 before:lg:h-[360px] z-[-1] text-sm font-bold sm:text-3xl">
<br /> <br />
<Image
className="w-48 sm:w-96"
src={"/grave.png"}
height={400}
width={400}
loading="lazy"
alt="grave"
/>
</div>
<div className="mb-32 grid text-center lg:max-w-5xl lg:w-full lg:mb-0 lg:text-left">
<a
href="https://puyo.v-sli.me"
className="text-center group rounded-lg border border-transparent px-5 py-4 transition-colors hover:border-gray-300 hover:bg-gray-100 hover:dark:border-neutral-700 hover:dark:bg-neutral-800/30"
target="_blank"
rel="noopener noreferrer"
>
<h2 className={`mb-3 text-2xl font-semibold`}>
<span className="inline-block transition-transform group-hover:translate-x-1 motion-reduce:transform-none">
-&gt;
</span>
</h2>
<p className={`m-0 text-sm opacity-50`}>
<br />
<br />
<br />
&quot;&quot;
</p>
</a>
</div>
</main>
</>
);
}

2
src/consts.ts Normal file
View file

@ -0,0 +1,2 @@
export const DOMAIN = "mi.v-sli.me";
export const DESCRIPTION = `このインスタンスは閉鎖しました。"${DOMAIN}"を支えていただきありがとうございました。`;

1
src/env.d.ts vendored Normal file
View file

@ -0,0 +1 @@
/// <reference types="astro/client" />

15
src/layouts/Layout.astro Normal file
View file

@ -0,0 +1,15 @@
---
const { title = "My Site" } = Astro.props;
import "../styles/globals.css";
---
<html lang="ja">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>{title}</title>
</head>
<body>
<slot />
</body>
</html>

66
src/pages/index.astro Normal file
View file

@ -0,0 +1,66 @@
---
import Layout from "../layouts/Layout.astro";
import { Icon } from "astro-icon/components";
import { Image } from "astro:assets";
import { DESCRIPTION } from "../consts";
---
<Layout title="ホームページ">
<html lang="ja">
<head>
<title>ぷよすきーの墓標</title>
</head>
<body>
<header class="w-full h-12 backdrop-blur-lg bg-black!">
<div class="flex justify-center items-center">
<Image
src="/hidemaru-2023.png"
height="50"
width="50"
alt="Logo"
class="block mx-auto"
/>
</div>
</header>
<main
class="flex min-h-screen flex-col items-center justify-between p-12 sm:p-24"
>
<div
class="relative flex place-items-center before:absolute before:h-[300px] before:w-[480px] before:-translate-x-1/2 before:rounded-full before:bg-gradient-radial before:from-white before:to-transparent before:blur-2xl before:content-[''] after:absolute after:-z-20 after:h-[180px] after:w-[240px] after:translate-x-1/3 after:bg-gradient-conic after:from-sky-200 after:via-blue-200 after:blur-2xl after:content-[''] before:dark:bg-gradient-to-br before:dark:from-transparent before:dark:to-blue-700 before:dark:opacity-10 after:dark:from-sky-900 after:dark:via-[#0141ff] after:dark:opacity-40 before:lg:h-[360px] z-[-1] text-sm font-bold sm:text-3xl"
>
ぷよすきーは滅んでしまったようです。 <br /> ここにあるのは、 <br />
ぷよすきーの墓標です。
<Icon name="game-icons:hasty-grave" class="w-48 sm:w-96" width={300} height={300} />
<!-- <Image -->
<!-- class="w-48 sm:w-96" -->
<!-- src="/grave.png" -->
<!-- height={400} -->
<!-- width={400} -->
<!-- loading="lazy" -->
<!-- alt="grave" -->
<!-- /> -->
</div>
<div
class="mb-32 grid text-center lg:max-w-5xl lg:w-full lg:mb-0 lg:text-left"
>
<a
href="https://puyo.v-sli.me"
class="text-center group rounded-lg border border-transparent px-5 py-4 transition-colors hover:border-gray-300 hover:bg-gray-100 hover:dark:border-neutral-700 hover:dark:bg-neutral-800/30"
target="_blank"
rel="noopener noreferrer"
>
<div class="mb-3 text-center flex justify-center items-center">
<h2 class="text-2xl font-semibold leading-30">
新しいぷよすきーに進む
</h2>
<Icon name="pixelarticons:next" width={30} height={30} class="ml-2 h-full" />
</div>
<p class="m-0 text-sm opacity-50">
{ DESCRIPTION }
</p>
</a>
</div>
</main>
</body>
</html>
</Layout>

View file

@ -1,7 +1,3 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
:root {
--foreground-rgb: 0, 0, 0;
--background-start-rgb: 225, 225, 255;

View file

@ -1,20 +1,20 @@
import type { Config } from 'tailwindcss'
import type { Config } from "tailwindcss";
const config: Config = {
content: [
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
],
theme: {
extend: {
backgroundImage: {
'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
'gradient-conic':
'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
},
},
},
plugins: [],
}
export default config
content: [
"./src/pages/**/*.{js,ts,jsx,tsx,mdx}",
"./src/components/**/*.{js,ts,jsx,tsx,mdx}",
"./src/app/**/*.{js,ts,jsx,tsx,mdx}",
],
theme: {
extend: {
backgroundImage: {
"gradient-radial": "radial-gradient(var(--tw-gradient-stops))",
"gradient-conic":
"conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))",
},
},
},
plugins: [],
};
export default config;

View file

@ -1,27 +1,27 @@
{
"compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"incremental": true,
"plugins": [
{
"name": "next"
}
],
"paths": {
"@/*": ["./src/*"]
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
"exclude": ["node_modules"]
"compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"jsx": "preserve",
"incremental": true,
"plugins": [
{
"name": "next"
}
],
"paths": {
"@/*": ["./src/*"]
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
"exclude": ["node_modules"]
}