Skip to content

Commit

Permalink
next15, lint
Browse files Browse the repository at this point in the history
  • Loading branch information
radityaharya committed Nov 11, 2024
1 parent f6280e5 commit 36c96f0
Show file tree
Hide file tree
Showing 146 changed files with 6,766 additions and 4,148 deletions.
4 changes: 2 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ DATABASE_URL='postgresql://postgres:postgres@postgres:5432/flowify-development'
# You can generate a new secret on the command line with:
# openssl rand -base64 32
# https://next-auth.js.org/configuration/options#secret
NEXTAUTH_SECRET=""
NEXTAUTH_URL="http://localhost:3000"
AUTH_SECRET=""
AUTH_URL="http://localhost:3000"

# Next Auth Spotify Provider
SPOTIFY_CLIENT_ID=""
Expand Down
53 changes: 0 additions & 53 deletions .eslintrc.cjs

This file was deleted.

26 changes: 0 additions & 26 deletions .gitpod.yml

This file was deleted.

2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ WORKDIR /app
COPY package.json yarn.lock* package-lock.json* pnpm-lock.yaml* ./
RUN \
if [ -f yarn.lock ]; then yarn --frozen-lockfile; \
elif [ -f package-lock.json ]; then npm ci; \
elif [ -f package-lock.json ]; then npm ci --force; \
elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm i --frozen-lockfile; \
else echo "Lockfile not found." && exit 1; \
fi
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,8 @@ To get started with Flowify, follow these steps:
| Variable | Description |
| --------------------- | -----------------------------------|
| DATABASE_URL | Postgres connection string |
| NEXTAUTH_SECRET | NextAuth secret key |
| NEXTAUTH_URL | NextAuth application URL |
| AUTH_SECRET | NextAuth secret key |
| AUTH_URL | NextAuth application URL |
| SPOTIFY_CLIENT_ID | Spotify API client ID |
| SPOTIFY_CLIENT_SECRET | Spotify API client secret |
| REDIS_URL | Redis connection URL |
Expand Down
4 changes: 1 addition & 3 deletions biome.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
"noStaticOnlyClass": "off"
},
"nursery": {
"noUndeclaredDependencies": "off",
"useImportRestrictions": "off",
"useSortedClasses": "off"
},
Expand All @@ -47,15 +46,14 @@
},
"correctness": {
"noUndeclaredVariables": "off",
"useExhaustiveDependencies":"warn"
"useExhaustiveDependencies": "warn"
}
}
},
"javascript": {
"formatter": {
"jsxQuoteStyle": "double",
"quoteProperties": "asNeeded",
"trailingCommas": "all",
"semicolons": "always",
"arrowParentheses": "always",
"bracketSpacing": true,
Expand Down
Binary file modified bun.lockb
Binary file not shown.
4 changes: 2 additions & 2 deletions docker-compose.dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ services:
- SPOTIFY_CLIENT_ID=${SPOTIFY_CLIENT_ID}
- SPOTIFY_CLIENT_SECRET=${SPOTIFY_CLIENT_SECRET}
- SKIP_ENV_VALIDATION=true
- NEXT_AUTH_SECRET=${NEXT_AUTH_SECRET}
- NEXTAUTH_URL=${NEXTAUTH_URL}
- AUTH_SECRET=${AUTH_SECRET}
- AUTH_URL=${AUTH_URL}
- TZ=Asia/Jakarta
env_file:
- .env
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ services:
- SPOTIFY_CLIENT_ID=${SPOTIFY_CLIENT_ID}
- SPOTIFY_CLIENT_SECRET=${SPOTIFY_CLIENT_SECRET}
- SKIP_ENV_VALIDATION=true
- NEXT_AUTH_SECRET=${NEXT_AUTH_SECRET}
- NEXTAUTH_URL=${NEXTAUTH_URL}
- AUTH_SECRET=${AUTH_SECRET}
- AUTH_URL=${AUTH_URL}
- TZ=Asia/Jakarta
env_file:
- .env
Expand Down
102 changes: 102 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
import typescriptEslint from "@typescript-eslint/eslint-plugin";
import unusedImports from "eslint-plugin-unused-imports";
import tailwindcss from "eslint-plugin-tailwindcss";
import simpleImportSort from "eslint-plugin-simple-import-sort";
import path from "node:path";
import { fileURLToPath } from "node:url";
import js from "@eslint/js";
import { FlatCompat } from "@eslint/eslintrc";
import reactCompiler from "eslint-plugin-react-compiler";

const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all,
});

const eslintConfig = [
...compat.extends("next/core-web-vitals", "plugin:prettier/recommended"),
{
settings: {
tailwindcss: {
callees: ["classnames", "clsx", "ctl", "cva", "tv", "cn"],
},
},

rules: {
"prettier/prettier": ["warn"],
},
},
...compat
.extends(
"plugin:tailwindcss/recommended",
"next/core-web-vitals",
"plugin:prettier/recommended",
)
.map((config) => ({
...config,
files: ["**/*.ts", "**/*.tsx", "**/*.mts"],
})),
{
files: ["**/*.ts", "**/*.tsx", "**/*.mts"],

plugins: {
"@typescript-eslint": typescriptEslint,
"unused-imports": unusedImports,
tailwindcss,
"simple-import-sort": simpleImportSort,
"react-compiler": reactCompiler,
},

rules: {
"react-compiler/react-compiler": "warn",
"prettier/prettier": ["warn"],
"tailwindcss/no-custom-classname": ["off"],
"import/no-extraneous-dependencies": "warn",
"no-param-reassign": "off",
"consistent-return": "off",
"no-empty-pattern": "off",
"no-use-before-define": "off",
"no-shadow": "off",
"@typescript-eslint/no-shadow": "off",
"@typescript-eslint/no-use-before-define": "off",
"react/jsx-no-constructed-context-values": "off",
"import/extensions": "off",
"react/function-component-definition": "off",
"react/destructuring-assignment": "off",
"react/require-default-props": "off",
"react/jsx-props-no-spreading": "off",
"react/no-unstable-nested-components": "off",
"@typescript-eslint/comma-dangle": "off",
"@typescript-eslint/consistent-type-imports": "error",
"no-restricted-syntax": [
"error",
"ForInStatement",
"LabeledStatement",
"WithStatement",
],
"import/prefer-default-export": "off",
"simple-import-sort/imports": "error",
"import/order": "off",
"@typescript-eslint/no-unused-vars": "off",
"unused-imports/no-unused-imports": "error",
"no-unused-vars": "off",
"@typescript-eslint/naming-convention": "off",
"import/no-anonymous-default-export": "off",
"unused-imports/no-unused-vars": [
"warn",
{
vars: "all",
varsIgnorePattern: "^_",
args: "after-used",
argsIgnorePattern: "^_",
},
],
},
ignores: [".next/**", "node_modules/**"],
},
];

export default eslintConfig;
3 changes: 3 additions & 0 deletions next.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ await import("./src/env.js");

const config = {
output: process.env.STANDALONE_OUTPUT ? "standalone" : undefined,
experimental: {
reactCompiler: true,
},
images: {
remotePatterns: [
{
Expand Down
Loading

0 comments on commit 36c96f0

Please sign in to comment.