Skip to content

Commit 15f7c6a

Browse files
Add eslint config across the board
1 parent b1c5231 commit 15f7c6a

File tree

10 files changed

+319
-71
lines changed

10 files changed

+319
-71
lines changed

eslint.config.js

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// @ts-check
2+
3+
import eslint from '@eslint/js';
4+
import tseslint from 'typescript-eslint';
5+
6+
export default tseslint.config(
7+
eslint.configs.recommended,
8+
...tseslint.configs.recommended,
9+
{
10+
files: ['**/*.{js,mjs,cjs,ts}'],
11+
languageOptions: {
12+
parserOptions: {
13+
ecmaVersion: 'latest',
14+
sourceType: 'module',
15+
},
16+
},
17+
rules: {
18+
// Add any global rules here
19+
},
20+
},
21+
{
22+
ignores: [
23+
'**/node_modules/**',
24+
'**/dist/**',
25+
'**/.next/**',
26+
'**/coverage/**',
27+
'**/*.config.js',
28+
'**/*.config.ts',
29+
],
30+
}
31+
);

mcp-server/eslint.config.js

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// @ts-check
2+
3+
import eslint from '@eslint/js';
4+
import tseslint from 'typescript-eslint';
5+
6+
export default tseslint.config(
7+
eslint.configs.recommended,
8+
...tseslint.configs.recommended,
9+
{
10+
files: ['**/*.{js,mjs,cjs,ts}'],
11+
languageOptions: {
12+
parserOptions: {
13+
ecmaVersion: 'latest',
14+
sourceType: 'module',
15+
},
16+
},
17+
rules: {
18+
// MCP server specific rules
19+
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
20+
'@typescript-eslint/explicit-function-return-type': 'warn',
21+
'@typescript-eslint/no-explicit-any': 'warn',
22+
'no-console': 'off', // Console logging is often needed for MCP servers
23+
},
24+
},
25+
{
26+
files: ['**/*.test.ts', 'vitest.*.ts'],
27+
rules: {
28+
'@typescript-eslint/explicit-function-return-type': 'off',
29+
'@typescript-eslint/no-explicit-any': 'off',
30+
},
31+
},
32+
{
33+
ignores: [
34+
'node_modules/**',
35+
'dist/**',
36+
'coverage/**',
37+
'*.config.js',
38+
'*.config.ts',
39+
],
40+
}
41+
);

mcp-server/package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,20 @@
1313
"test": "vitest run",
1414
"test:watch": "vitest",
1515
"test:coverage": "vitest run --coverage",
16-
"test:ui": "vitest --ui"
16+
"test:ui": "vitest --ui",
17+
"lint": "eslint .",
18+
"lint:fix": "eslint . --fix"
1719
},
1820
"dependencies": {
1921
"@modelcontextprotocol/sdk": "^1.17.0",
2022
"@turn-based-mcp/shared": "file:../shared"
2123
},
2224
"devDependencies": {
25+
"@eslint/js": "^9.32.0",
2326
"@types/node": "^24.1.0",
2427
"@vitest/ui": "^3.2.4",
2528
"typescript": "^5.5.0",
29+
"typescript-eslint": "^8.39.0",
2630
"vitest": "^3.2.4"
2731
}
2832
}

0 commit comments

Comments
 (0)