diff --git a/.env b/.env index f82651ed..c6bda04c 100644 --- a/.env +++ b/.env @@ -1,2 +1,6 @@ VITE_BASE_URL=https://api.humanzipyo.com -VITE_GOOGLE_ANALYTICS=G-EZPQMV95QJ \ No newline at end of file +VITE_GOOGLE_ANALYTICS=G-EZPQMV95QJ +VITE_KAKAO_API_KEY=6c656322cc1bcb9669fbaee86b9df89a +VITE_APPLE_CLIENT_ID=humanzipyo.app.com +VITE_GOOGLE_CLIENT_ID=376774774273-5do2k4e5r3k13mgjdfam4csprajporr9.apps.googleusercontent.com +VITE_NAVER_CLIENT_ID=c943YPmMR8bflLezMJGz diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..c9a921ec --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,30 @@ +name: CI + +on: + pull_request: + branches: ['main', 'develop'] + push: + branches: ['develop'] + +jobs: + lint-and-format: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: '18.20.5' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Check Prettier formatting + run: npx prettier --check "src/**/*.{ts,tsx,js,jsx,json,css}" + + - name: Type check + run: npx tsc --noEmit diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index e6e879a6..97bab53a 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -34,7 +34,7 @@ jobs: cache: 'npm' - name: Install dependencies - run: npm install + run: npm ci - name: Build the project run: npm run build diff --git a/.gitignore b/.gitignore index a547bf36..1677f86b 100644 --- a/.gitignore +++ b/.gitignore @@ -7,10 +7,13 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* +*.tsbuildinfo + node_modules dist dist-ssr *.local +.env # Editor directories and files .vscode/* diff --git a/.prettierrc b/.prettierrc index b699b24e..82d89519 100644 --- a/.prettierrc +++ b/.prettierrc @@ -49,5 +49,5 @@ ], "importOrderSeparation": false, "importOrderSortSpecifiers": true, - "plugins": ["prettier-plugin-css-order", "@trivago/prettier-plugin-sort-imports"] + "plugins": ["@trivago/prettier-plugin-sort-imports"] } diff --git a/README.md b/README.md index c7c14614..5afdbdaf 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,7 @@    -  -   diff --git a/asconfig.json b/asconfig.json deleted file mode 100644 index 491904df..00000000 --- a/asconfig.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "targets": { - "debug": { - "outFile": "build/debug.wasm", - "textFile": "build/debug.wat", - "sourceMap": true, - "debug": true - }, - "release": { - "outFile": "./assembly/build/release.wasm", - "textFile": "./assembly/build/release.wat", - "sourceMap": true, - "optimizeLevel": 3, - "shrinkLevel": 0, - "converge": false, - "noAssert": false - } - }, - "options": { - "bindings": "esm" - } -} diff --git a/eslint.config.js b/eslint.config.js index 9fc58d6c..236f4a7c 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -4,40 +4,38 @@ import globals from 'globals'; import tseslint from 'typescript-eslint'; export default [ + { + ignores: [ + 'dist/**', + 'public/assets/**', + 'node_modules/**', + 'build/**', + '*.config.js', + '*.config.ts', + 'src/utils/test.js', + 'src/utils/worker/**', + 'src/utils/wasm/**', + ], + }, { files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'] }, { languageOptions: { globals: globals.browser } }, + pluginJs.configs.recommended, + ...tseslint.configs.recommended, + pluginReact.configs.flat.recommended, { - 'jsx-runtime': { - env: { - browser: true, - es6: true, - node: true, - }, - plugins: ['@typescript-eslint', 'react', 'prettier'], - extends: [ - 'prettier', - 'eslint:recommended', - 'plugin:react/recommended', - 'plugin:prettier/recommended', - 'plugin:@typescript-eslint/recommended', - ], - parser: '@typescript-eslint/parser', - parserOptions: { - ecmaVersion: 'latest', - sourceType: 'module', - project: './tsconfig.json', - }, - rules: { - 'prettier/prettier': 'error', - 'react/react-in-jsx-scope': 0, - 'react/prefer-stateless-function': 0, - 'react/jsx-filename-extension': 0, - 'react/jsx-one-expression-per-line': 0, - 'no-nested-ternary': 0, + settings: { + react: { + version: 'detect', }, }, + rules: { + 'react/react-in-jsx-scope': 0, + 'react/prefer-stateless-function': 0, + 'react/jsx-filename-extension': 0, + 'react/jsx-one-expression-per-line': 0, + 'no-nested-ternary': 0, + 'react/prop-types': 0, + '@typescript-eslint/no-explicit-any': 'warn', + }, }, - pluginJs.configs.recommended, - ...tseslint.configs.recommended, - pluginReact.configs.flat.recommended, ]; diff --git a/index.html b/index.html index b83c8513..677c142c 100644 --- a/index.html +++ b/index.html @@ -21,7 +21,7 @@