Skip to content

Commit

Permalink
feat: new setup of website with Next js + Typescript (#2710)
Browse files Browse the repository at this point in the history
Co-authored-by: Sambhav Gupta <[email protected]>
Co-authored-by: Ansh Goyal <[email protected]>
Co-authored-by: Ashish Padhy <[email protected]>
Co-authored-by: Vishvamsinh Vaghela <[email protected]>
Co-authored-by: Ashmit JaiSarita Gupta <[email protected]>
  • Loading branch information
6 people authored May 27, 2024
1 parent e249fee commit 80a29fe
Show file tree
Hide file tree
Showing 936 changed files with 32,333 additions and 40,879 deletions.
303 changes: 303 additions & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,303 @@
{
"extends": [
"airbnb-base",
"next/core-web-vitals",
"eslint:recommended",
"plugin:prettier/recommended"
],
"env": {
"browser": true,
"es2021": true,
"node": true
},
"plugins": [
"react",
"jsx-a11y"
],
"rules": {
"prettier/prettier": [
"error",
{
"singleQuote": true,
"endOfLine": "auto",
"semi": true,
"tabWidth": 2,
"trailingComma": "none",
"arrowParens": "always",
"bracketSpacing": true,
"jsxBracketSameLine": false,
"useTabs": false,
"quoteProps": "as-needed",
"insertPragma": false,
"requirePragma": false,
"jsxSingleQuote": true,
"printWidth": 120
}
],
"max-len": [
"error",
{
"code": 120,
"ignoreUrls": true,
"ignorePattern": "(className=\\{[\\s\\S]*\\}|.*\\}|'.*'|className='.*')" // Ignore classnames
}
]
},
"globals": {
"React": true,
"expect": true,
"jsdom": true,
"JSX": true
},
"overrides": [
// Configuration for TypeScript files
{
"files": ["**/*.ts", "**/*.tsx", "netlify/*.ts"],
"plugins": [
"@typescript-eslint",
"tailwindcss",
"unused-imports",
"simple-import-sort"
],
"extends": [
"plugin:tailwindcss/recommended",
"airbnb-typescript",
"next/core-web-vitals",
"plugin:prettier/recommended"
],
"parserOptions": {
"project": "./tsconfig.json"
},
"rules": {
"react/destructuring-assignment": "off", // Vscode doesn't support automatically destructuring, it's a pain to add a new variable
"react/require-default-props": "off", // Allow non-defined react props as undefined
"react/jsx-props-no-spreading": "off", // _app.tsx uses spread operator and also, react-hook-form
"react-hooks/exhaustive-deps": "off", // Incorrectly report needed dependency with Next.js router
"@next/next/no-img-element": "off", // We currently not using next/image because it isn't supported with SSG mode
"@next/next/link-passhref": "off", // Only needed when the child of Link wraps an <a> tag
"@typescript-eslint/comma-dangle": "off", // Avoid conflict rule between Eslint and Prettier
"@typescript-eslint/indent": "off", // Avoid conflict rule between Eslint and Prettier
"@typescript-eslint/consistent-type-imports": "error", // Ensure `import type` is used when it's necessary
"no-restricted-syntax": [
"error",
"ForInStatement",
"LabeledStatement",
"WithStatement"
], // Overrides Airbnb configuration and enable no-restricted-syntax
"import/prefer-default-export": "off", // Named export is easier to refactor automatically
"tailwindcss/no-custom-classname": "off", // Disabled otherwise nightmare to allow each custom tailwind classes
"simple-import-sort/imports": "error", // Import configuration for `eslint-plugin-simple-import-sort`
"simple-import-sort/exports": "error", // Export configuration for `eslint-plugin-simple-import-sort`
"@typescript-eslint/no-unused-vars": "off",
"class-methods-use-this": "off",
"unused-imports/no-unused-imports": "error",
"unused-imports/no-unused-vars": [
"error",
{ "argsIgnorePattern": "^_" }
],
// Variables
"init-declarations": "off",
"no-catch-shadow": "off",
"no-delete-var": "error",
"no-label-var": "error",
"no-restricted-globals": "error",
"no-shadow": "off",
"no-shadow-restricted-names": "error",
"no-undef": "error",
"no-undef-init": "error",
"no-undefined": "off",
"no-unused-vars": "error",
"no-use-before-define": "error",
// Styling
"array-bracket-newline": "off",
"array-bracket-spacing": "error",
"array-element-newline": "off",
"block-spacing": "error",
"brace-style": [
"off",
"stroustrup",
{
"allowSingleLine": true
}
],
"camelcase": "off",
"capitalized-comments": "off",
"comma-dangle": [
"error",
"never"
],
"comma-spacing": [
2,
{
"before": false,
"after": true
}
],
"comma-style": [
"error",
"last"
],
"eol-last": "error",
"func-call-spacing": "error",
"func-name-matching": "error",
"func-names": "off",
"func-style": "off",
"jsx-quotes": [
"error",
"prefer-single"
],
"key-spacing": "error",
"keyword-spacing": "error",
"line-comment-position": "off",
"linebreak-style": [
"error",
"unix"
],
"lines-around-comment": [
"error",
{
"beforeBlockComment": true,
"afterBlockComment": false,
"beforeLineComment": false,
"afterLineComment": false,
"allowBlockStart": true,
"allowBlockEnd": false,
"allowObjectStart": true,
"allowObjectEnd": false,
"allowArrayStart": true,
"allowArrayEnd": false
}
],
"max-depth": "error",
"max-lines": [
"error",
{
"max": 2000
}
],
"max-nested-callbacks": "error",
"max-statements-per-line": [
"error",
{
"max": 2
}
],
"multiline-comment-style": "off",
"multiline-ternary": "off",
"new-cap": "off",
"new-parens": "error",
"newline-per-chained-call": [
"error",
{
"ignoreChainWithDepth": 4
}
],
"newline-after-var": ["error", "always"],
"no-array-constructor": "error",
"no-lonely-if": "error",
"no-mixed-operators": "off",
"no-mixed-spaces-and-tabs": "error",
"no-multi-assign": "off",
"no-multiple-empty-lines": [
"error",
{
"max": 1
}
],
"no-negated-condition": "error",
"no-nested-ternary": "error",
"no-new-object": "error",
"no-plusplus": "off",
"no-tabs": "error",
"no-ternary": "off",
"no-trailing-spaces": "error",
"no-unneeded-ternary": "error",
"no-whitespace-before-property": "error",
"nonblock-statement-body-position": "error",
"object-curly-newline": "off",
"object-curly-spacing": [
"error",
"always"
],
"object-property-newline": "off",
"padded-blocks": [
"error",
"never"
],
"padding-line-between-statements": [
"error",
{
"blankLine": "always",
"prev": "*",
"next": "return"
},
{
"blankLine": "always",
"prev": [
"const",
"let",
"var"
],
"next": "*"
},
{
"blankLine": "any",
"prev": [
"const",
"let",
"var"
],
"next": [
"const",
"let",
"var"
]
}
],
"quote-props": [
"error",
"as-needed"
],
"quotes": [
"error",
"single",
{
"avoidEscape": true
}
],
"require-jsdoc": "warn",
"semi": "error",
"semi-spacing": "error",
"semi-style": [
"error",
"last"
],
"sort-keys": "off",
"sort-vars": "off",
"space-before-blocks": "error",
"space-before-function-paren": "error",
"space-in-parens": "error",
"space-infix-ops": "error",
"space-unary-ops": "error",
"spaced-comment": [
"error",
"always",
{
"block": {
"exceptions": [
"!"
]
}
}
],
"switch-colon-spacing": "error"
}
},
{
"files": ["components/logos/*"],
"rules": {
"max-len": "off"
}
}
]
}
6 changes: 0 additions & 6 deletions .eslintrc.js

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/cypress-tests.yml

This file was deleted.

3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,5 @@ meetings.json
.env
cypress/screenshots
cypress/videos
/config/finance/json-data/*
/config/finance/json-data/*
*.mdx
1 change: 0 additions & 1 deletion .prettierignore

This file was deleted.

11 changes: 11 additions & 0 deletions .remarkrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"plugins": [
"lint",
"mdx"
],
"settings": {
"mdx": {
"acornInjectPlugins": []
}
}
}
Loading

0 comments on commit 80a29fe

Please sign in to comment.