feat: remove turbo
This commit is contained in:
parent
07955286f1
commit
c60f6f511e
@ -6,13 +6,14 @@
|
||||
"build": "email build",
|
||||
"dev": "email dev --port 5003",
|
||||
"export": "email export",
|
||||
"clean": "git clean -xdf .cache .turbo dist node_modules",
|
||||
"clean": "git clean -xdf .cache dist node_modules",
|
||||
"typecheck": "tsc --noEmit --emitDeclarationOnly false"
|
||||
},
|
||||
"dependencies": {
|
||||
"@react-email/components": "0.0.31",
|
||||
"@react-email/components": "^0.0.42",
|
||||
"react": "^19.0.0",
|
||||
"react-email": "3.0.4"
|
||||
"react-email": "^4.0.16",
|
||||
"@konobangu/email": "workspace:*"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/react": "19.0.1"
|
||||
|
@ -2,8 +2,12 @@
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
"jsx": "react-jsx"
|
||||
"jsx": "react-jsx",
|
||||
"jsxImportSource": "react",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "bundler"
|
||||
},
|
||||
"references": [{ "path": "../../packages/email" }],
|
||||
"include": ["**/*.ts", "**/*.tsx"],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
||||
|
@ -10,6 +10,6 @@
|
||||
"keywords": [],
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"whistle": "^2.9.93"
|
||||
"whistle": "^2.9.99"
|
||||
}
|
||||
}
|
||||
|
@ -13,90 +13,87 @@
|
||||
"dependencies": {
|
||||
"@abraham/reflection": "^0.13.0",
|
||||
"@apollo/client": "^3.13.8",
|
||||
"@codemirror/language": "6.0.0",
|
||||
"@corvu/drawer": "^0.2.3",
|
||||
"@codemirror/language": "6.11.1",
|
||||
"@corvu/drawer": "^0.2.4",
|
||||
"@corvu/otp-field": "^0.1.4",
|
||||
"@corvu/resizable": "^0.2.4",
|
||||
"@graphiql/toolkit": "^0.11.1",
|
||||
"@hookform/resolvers": "^5.0.1",
|
||||
"@corvu/resizable": "^0.2.5",
|
||||
"@graphiql/toolkit": "^0.11.3",
|
||||
"@hookform/resolvers": "^5.1.1",
|
||||
"@outposts/injection-js": "^2.5.1",
|
||||
"@radix-ui/react-accordion": "^1.2.10",
|
||||
"@radix-ui/react-alert-dialog": "^1.1.13",
|
||||
"@radix-ui/react-aspect-ratio": "^1.1.6",
|
||||
"@radix-ui/react-avatar": "^1.1.9",
|
||||
"@radix-ui/react-checkbox": "^1.3.1",
|
||||
"@radix-ui/react-collapsible": "^1.1.10",
|
||||
"@radix-ui/react-context-menu": "^2.2.14",
|
||||
"@radix-ui/react-dialog": "^1.1.13",
|
||||
"@radix-ui/react-dropdown-menu": "^2.1.14",
|
||||
"@radix-ui/react-hover-card": "^1.1.13",
|
||||
"@radix-ui/react-label": "^2.1.6",
|
||||
"@radix-ui/react-menubar": "^1.1.14",
|
||||
"@radix-ui/react-navigation-menu": "^1.2.12",
|
||||
"@radix-ui/react-popover": "^1.1.13",
|
||||
"@radix-ui/react-progress": "^1.1.6",
|
||||
"@radix-ui/react-radio-group": "^1.3.6",
|
||||
"@radix-ui/react-scroll-area": "^1.2.8",
|
||||
"@radix-ui/react-select": "^2.2.4",
|
||||
"@radix-ui/react-separator": "^1.1.6",
|
||||
"@radix-ui/react-slider": "^1.3.4",
|
||||
"@radix-ui/react-slot": "^1.2.2",
|
||||
"@radix-ui/react-switch": "^1.2.4",
|
||||
"@radix-ui/react-tabs": "^1.1.11",
|
||||
"@radix-ui/react-toggle": "^1.1.8",
|
||||
"@radix-ui/react-toggle-group": "^1.1.9",
|
||||
"@radix-ui/react-tooltip": "^1.2.6",
|
||||
"@rsbuild/plugin-react": "^1.2.0",
|
||||
"@tanstack/react-form": "^1.12.1",
|
||||
"@tanstack/react-query": "^5.75.6",
|
||||
"@tanstack/react-router": "^1.112.13",
|
||||
"@radix-ui/react-accordion": "^1.2.11",
|
||||
"@radix-ui/react-alert-dialog": "^1.1.14",
|
||||
"@radix-ui/react-aspect-ratio": "^1.1.7",
|
||||
"@radix-ui/react-avatar": "^1.1.10",
|
||||
"@radix-ui/react-checkbox": "^1.3.2",
|
||||
"@radix-ui/react-collapsible": "^1.1.11",
|
||||
"@radix-ui/react-context-menu": "^2.2.15",
|
||||
"@radix-ui/react-dialog": "^1.1.14",
|
||||
"@radix-ui/react-dropdown-menu": "^2.1.15",
|
||||
"@radix-ui/react-hover-card": "^1.1.14",
|
||||
"@radix-ui/react-label": "^2.1.7",
|
||||
"@radix-ui/react-menubar": "^1.1.15",
|
||||
"@radix-ui/react-navigation-menu": "^1.2.13",
|
||||
"@radix-ui/react-popover": "^1.1.14",
|
||||
"@radix-ui/react-progress": "^1.1.7",
|
||||
"@radix-ui/react-radio-group": "^1.3.7",
|
||||
"@radix-ui/react-scroll-area": "^1.2.9",
|
||||
"@radix-ui/react-select": "^2.2.5",
|
||||
"@radix-ui/react-separator": "^1.1.7",
|
||||
"@radix-ui/react-slider": "^1.3.5",
|
||||
"@radix-ui/react-slot": "^1.2.3",
|
||||
"@radix-ui/react-switch": "^1.2.5",
|
||||
"@radix-ui/react-tabs": "^1.1.12",
|
||||
"@radix-ui/react-toggle": "^1.1.9",
|
||||
"@radix-ui/react-toggle-group": "^1.1.10",
|
||||
"@radix-ui/react-tooltip": "^1.2.7",
|
||||
"@rsbuild/plugin-react": "^1.3.2",
|
||||
"@tanstack/react-form": "^1.12.3",
|
||||
"@tanstack/react-query": "^5.80.7",
|
||||
"@tanstack/react-table": "^8.21.3",
|
||||
"@tanstack/router-devtools": "^1.112.13",
|
||||
"@tanstack/store": "^0.7.1",
|
||||
"arktype": "^2.1.6",
|
||||
"chart.js": "^4.4.8",
|
||||
"arktype": "^2.1.20",
|
||||
"chart.js": "^4.4.9",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"cmdk": "^1.1.1",
|
||||
"date-fns": "^4.1.0",
|
||||
"embla-carousel-react": "^8.6.0",
|
||||
"graphiql": "^4.0.2",
|
||||
"graphiql": "^4.1.2",
|
||||
"graphql": "^16.11.0",
|
||||
"input-otp": "^1.4.2",
|
||||
"jotai": "^2.12.3",
|
||||
"jotai": "^2.12.5",
|
||||
"jotai-signal": "^0.9.0",
|
||||
"lodash-es": "^4.17.21",
|
||||
"lucide-react": "^0.512.0",
|
||||
"lucide-react": "^0.514.0",
|
||||
"oidc-client-rx": "0.1.0-alpha.9",
|
||||
"react": "^19.1.0",
|
||||
"react-day-picker": "9.6.0",
|
||||
"react-day-picker": "9.7.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"react-resizable-panels": "^3.0.1",
|
||||
"react-resizable-panels": "^3.0.2",
|
||||
"recharts": "^2.15.3",
|
||||
"rxjs": "^7.8.2",
|
||||
"sonner": "^2.0.3",
|
||||
"tailwind-merge": "^3.2.0",
|
||||
"tailwindcss": "^4.0.6",
|
||||
"tw-animate-css": "^1.2.7",
|
||||
"type-fest": "^4.40.0",
|
||||
"vaul": "^1.1.2"
|
||||
"sonner": "^2.0.5",
|
||||
"tailwind-merge": "^3.3.1",
|
||||
"tailwindcss": "^4.1.10",
|
||||
"tw-animate-css": "^1.3.4",
|
||||
"type-fest": "^4.41.0",
|
||||
"vaul": "^1.1.2",
|
||||
"es-toolkit": "^1.39.3",
|
||||
"@tanstack/react-router": "^1.121.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@graphql-codegen/cli": "^5.0.6",
|
||||
"@graphql-codegen/client-preset": "^4.8.1",
|
||||
"@graphql-codegen/cli": "^5.0.7",
|
||||
"@graphql-codegen/client-preset": "^4.8.2",
|
||||
"@graphql-codegen/typescript": "^4.1.6",
|
||||
"@graphql-typed-document-node/core": "^3.2.0",
|
||||
"@parcel/watcher": "^2.5.1",
|
||||
"@rsbuild/core": "^1.2.15",
|
||||
"@tailwindcss/postcss": "^4.0.9",
|
||||
"@tanstack/react-router": "^1.112.0",
|
||||
"@tanstack/router-devtools": "^1.112.6",
|
||||
"@tanstack/router-plugin": "^1.112.13",
|
||||
"@types/lodash-es": "^4.17.12",
|
||||
"@types/react": "^19.1.2",
|
||||
"@types/react-dom": "^19.1.2",
|
||||
"@rsbuild/core": "^1.3.22",
|
||||
"@tailwindcss/postcss": "^4.1.10",
|
||||
"@types/react": "^19.1.8",
|
||||
"@types/react-dom": "^19.1.6",
|
||||
"chalk": "^5.4.1",
|
||||
"commander": "^14.0.0",
|
||||
"postcss": "^8.5.3"
|
||||
"postcss": "^8.5.5",
|
||||
"@tanstack/router-devtools": "^1.121.5",
|
||||
"@tanstack/router-plugin": "^1.121.4"
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import {
|
||||
} from '@/infra/graphql/gql/graphql';
|
||||
import { Injectable, inject } from '@outposts/injection-js';
|
||||
import { ArkErrors } from 'arktype';
|
||||
import { omit } from 'lodash-es';
|
||||
import { omit } from 'es-toolkit';
|
||||
import {
|
||||
type MikanSubscriptionBangumiSourceUrl,
|
||||
type MikanSubscriptionSeasonSourceUrl,
|
||||
|
5
justfile
5
justfile
@ -32,14 +32,9 @@ dev-deps-clean:
|
||||
dev-codegen:
|
||||
pnpm run --filter=webui codegen
|
||||
|
||||
[unix]
|
||||
dev-all:
|
||||
zellij --layout dev.kdl
|
||||
|
||||
[windows]
|
||||
dev-all:
|
||||
pnpm run dev-all
|
||||
|
||||
dev-codegen-wait:
|
||||
@until nc -z localhost 5001; do echo "Waiting for Recorder..."; sleep 1; done
|
||||
pnpm run --filter=webui codegen-watch
|
||||
|
29
package.json
29
package.json
@ -3,42 +3,35 @@
|
||||
"version": "0.0.0",
|
||||
"description": "Kono bangumi?",
|
||||
"license": "MIT",
|
||||
"workspaces": [
|
||||
"packages/*",
|
||||
"apps/*"
|
||||
],
|
||||
"workspaces": ["packages/*", "apps/*"],
|
||||
"type": "module",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/dumtruck/konobangu.git"
|
||||
},
|
||||
"scripts": {
|
||||
"dev-webui": "just dev-webui",
|
||||
"dev-proxy": "just dev-proxy",
|
||||
"dev-recorder": "just dev-recorder",
|
||||
"dev-deps": "just dev-deps",
|
||||
"dev-codegen-wait": "just dev-codegen-wait",
|
||||
"dev-all": "turbo run //#dev-recorder //#dev-proxy //#dev-webui //#dev-deps //#dev-codegen-wait",
|
||||
"lint": "ultracite lint",
|
||||
"format": "ultracite format",
|
||||
"bump-deps": "npx --yes npm-check-updates --deep -u -x react-day-picker && pnpm install",
|
||||
"bump-deps": "npx --yes npm-check-updates --deep -u && pnpm install",
|
||||
"clean": "git clean -xdf node_modules"
|
||||
},
|
||||
"packageManager": "pnpm@10.10.0",
|
||||
"packageManager": "pnpm@10.12.1",
|
||||
"engines": {
|
||||
"node": ">=22"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@auto-it/all-contributors": "^11.3.0",
|
||||
"@auto-it/first-time-contributor": "^11.3.0",
|
||||
"@biomejs/biome": "1.9.4",
|
||||
"@types/node": "^24.0.0",
|
||||
"@types/node": "^24.0.1",
|
||||
"cross-env": "^7.0.3",
|
||||
"kill-port": "^2.0.1",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"tsx": "^4.19.4",
|
||||
"turbo": "^2.5.4",
|
||||
"tsx": "^4.20.2",
|
||||
"typescript": "^5.8.3",
|
||||
"ultracite": "^4.2.8"
|
||||
"ultracite": "^4.2.10"
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"codemirror-graphql>@codemirror/language": "^6.11.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -10,6 +10,7 @@ export interface SendOptions {
|
||||
|
||||
export const konosend = {
|
||||
emails: {
|
||||
// biome-ignore lint/suspicious/useAwait: <explanation>
|
||||
send: async (_props: SendOptions) => {
|
||||
throw new Error('unimplemented');
|
||||
},
|
||||
|
@ -3,7 +3,7 @@
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"clean": "git clean -xdf .cache .turbo dist node_modules",
|
||||
"clean": "git clean -xdf .cache dist node_modules",
|
||||
"typecheck": "tsc --noEmit --emitDeclarationOnly false"
|
||||
},
|
||||
"dependencies": {
|
||||
|
@ -2,8 +2,17 @@
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"baseUrl": ".",
|
||||
"composite": true
|
||||
"composite": true,
|
||||
"jsx": "react-jsx",
|
||||
"jsxImportSource": "react",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "bundler"
|
||||
},
|
||||
"include": ["./*.ts", "./*.tsx"],
|
||||
"include": [
|
||||
"./*.ts",
|
||||
"./*.tsx",
|
||||
"./templates/**/*.ts",
|
||||
"./templates/**/*.tsx"
|
||||
],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
||||
|
@ -1,15 +0,0 @@
|
||||
import type { Thing, WithContext } from 'schema-dts';
|
||||
|
||||
type JsonLdProps = {
|
||||
code: WithContext<Thing>;
|
||||
};
|
||||
|
||||
export const JsonLd = ({ code }: JsonLdProps) => (
|
||||
<script
|
||||
type="application/ld+json"
|
||||
// biome-ignore lint/security/noDangerouslySetInnerHtml: "This is a JSON-LD script, not user-generated content."
|
||||
dangerouslySetInnerHTML={{ __html: JSON.stringify(code) }}
|
||||
/>
|
||||
);
|
||||
|
||||
export * from 'schema-dts';
|
@ -1,67 +0,0 @@
|
||||
import merge from 'lodash.merge';
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
type MetadataGenerator = Omit<Metadata, 'description' | 'title'> & {
|
||||
title: string;
|
||||
description: string;
|
||||
image?: string;
|
||||
};
|
||||
|
||||
const applicationName = 'next-forge';
|
||||
const author: Metadata['authors'] = {
|
||||
name: 'Hayden Bleasel',
|
||||
url: 'https://haydenbleasel.com/',
|
||||
};
|
||||
const publisher = 'Hayden Bleasel';
|
||||
const twitterHandle = '@haydenbleasel';
|
||||
|
||||
export const createMetadata = ({
|
||||
title,
|
||||
description,
|
||||
image,
|
||||
...properties
|
||||
}: MetadataGenerator): Metadata => {
|
||||
const parsedTitle = `${title} | ${applicationName}`;
|
||||
const defaultMetadata: Metadata = {
|
||||
title: parsedTitle,
|
||||
description,
|
||||
applicationName,
|
||||
authors: [author],
|
||||
creator: author.name,
|
||||
formatDetection: {
|
||||
telephone: false,
|
||||
},
|
||||
appleWebApp: {
|
||||
capable: true,
|
||||
statusBarStyle: 'default',
|
||||
title: parsedTitle,
|
||||
},
|
||||
openGraph: {
|
||||
title: parsedTitle,
|
||||
description,
|
||||
type: 'website',
|
||||
siteName: applicationName,
|
||||
locale: 'en_US',
|
||||
},
|
||||
publisher,
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
creator: twitterHandle,
|
||||
},
|
||||
};
|
||||
|
||||
const metadata: Metadata = merge(defaultMetadata, properties);
|
||||
|
||||
if (image && metadata.openGraph) {
|
||||
metadata.openGraph.images = [
|
||||
{
|
||||
url: image,
|
||||
width: 1200,
|
||||
height: 630,
|
||||
alt: title,
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
return metadata;
|
||||
};
|
@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "@konobangu/seo",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"clean": "git clean -xdf .cache .turbo dist node_modules",
|
||||
"typecheck": "tsc --noEmit --emitDeclarationOnly false"
|
||||
},
|
||||
"dependencies": {
|
||||
"lodash.merge": "^4.6.2",
|
||||
"react": "^19.0.0",
|
||||
"schema-dts": "^1.1.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/lodash.merge": "^4.6.9",
|
||||
"@types/node": "22.10.1",
|
||||
"@types/react": "19.0.1",
|
||||
"@types/react-dom": "^19.0.3",
|
||||
"next": "^15.1.4"
|
||||
}
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"baseUrl": ".",
|
||||
"composite": true
|
||||
},
|
||||
"include": ["**/*.ts", "**/*.tsx"],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
@ -8,11 +8,11 @@
|
||||
"start": "tsx main.ts"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fastify/static": "^8.1.1",
|
||||
"@fastify/static": "^8.2.0",
|
||||
"bittorrent-tracker": "^11.2.1",
|
||||
"fastify": "^5.2.2",
|
||||
"tsx": "^4.19.2",
|
||||
"webtorrent": "^2.5.19"
|
||||
"fastify": "^5.4.0",
|
||||
"tsx": "^4.20.2",
|
||||
"webtorrent": "^2.6.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/create-torrent": "^5.0.2",
|
||||
|
@ -5,11 +5,11 @@
|
||||
"main": "./index.js",
|
||||
"type": "commonjs",
|
||||
"scripts": {
|
||||
"clean": "git clean -xdf .cache .turbo dist node_modules",
|
||||
"clean": "git clean -xdf .cache dist node_modules",
|
||||
"typecheck": "tsc --noEmit --emitDeclarationOnly false"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vitejs/plugin-react": "^4.3.4",
|
||||
"vitest": "^2.1.8"
|
||||
"@vitejs/plugin-react": "^4.5.2",
|
||||
"vitest": "^3.2.3"
|
||||
}
|
||||
}
|
||||
|
5020
pnpm-lock.yaml
generated
5020
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@ -10,9 +10,6 @@
|
||||
{
|
||||
"path": "./packages/email"
|
||||
},
|
||||
{
|
||||
"path": "./packages/seo"
|
||||
},
|
||||
{
|
||||
"path": "./packages/testing"
|
||||
},
|
||||
|
36
turbo.json
36
turbo.json
@ -1,36 +0,0 @@
|
||||
{
|
||||
"$schema": "https://turborepo.com/schema.json",
|
||||
"ui": "tui",
|
||||
"tasks": {
|
||||
"//#dev-webui": {
|
||||
"cache": false,
|
||||
"persistent": true,
|
||||
"interactive": true,
|
||||
"interruptible": true
|
||||
},
|
||||
"//#dev-proxy": {
|
||||
"cache": false,
|
||||
"persistent": true,
|
||||
"interactive": true,
|
||||
"interruptible": true
|
||||
},
|
||||
"//#dev-recorder": {
|
||||
"cache": false,
|
||||
"persistent": true,
|
||||
"interactive": true,
|
||||
"interruptible": true
|
||||
},
|
||||
"//#dev-deps": {
|
||||
"cache": false,
|
||||
"persistent": true,
|
||||
"interactive": true,
|
||||
"interruptible": true
|
||||
},
|
||||
"//#dev-codegen-wait": {
|
||||
"cache": false,
|
||||
"persistent": true,
|
||||
"interactive": true,
|
||||
"interruptible": true
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user