spb/vquant Public MIT
VibeQuant — AI-powered institutional-grade financial intelligence platform.
TypeScript 84.3%
Python 11.7%
JavaScript 1.6%
CSS 1.5%
HTML 0.7%
1/*2 * =============================================================================3 * VibeQuant (vquant) — AI-Powered Financial Intelligence Platform4 * -----------------------------------------------------------------------------5 * File: eslint.config.js6 *7 * Author: Simon-Pierre Boucher8 * Contact: contact@spboucher.ai9 * Website: https://www.spboucher.ai10 * Demo: https://www.vquant.ai11 * License: MIT (see LICENSE)12 *13 * Copyright © 2026 Simon-Pierre Boucher. All rights reserved.14 * =============================================================================15 */1617import js from "@eslint/js";18import tseslint from "typescript-eslint";19import reactHooks from "eslint-plugin-react-hooks";20import reactRefresh from "eslint-plugin-react-refresh";21import prettier from "eslint-config-prettier";2223export default tseslint.config(24 { ignores: ["dist/", "node_modules/", ".venv/", "**/*.py"] },2526 js.configs.recommended,27 ...tseslint.configs.recommended,28 prettier,2930 // Client files (React)31 {32 files: ["client/src/**/*.{ts,tsx}"],33 plugins: {34 "react-hooks": reactHooks,35 "react-refresh": reactRefresh,36 },37 rules: {38 "react-hooks/rules-of-hooks": "error",39 "react-hooks/exhaustive-deps": "warn",40 "react-refresh/only-export-components": ["warn", { allowConstantExport: true }],41 },42 },4344 // Server files — disable React compiler rule that leaks into non-React code45 {46 files: ["server/**/*.ts"],47 rules: {48 "preserve-caught-error": "off",49 },50 },5152 // Shared rules for all TS files53 {54 files: ["**/*.{ts,tsx}"],55 rules: {56 // Relax for gradual adoption — these can be tightened later57 "@typescript-eslint/no-explicit-any": "warn",58 "@typescript-eslint/no-unused-vars": ["warn", {59 argsIgnorePattern: "^_",60 varsIgnorePattern: "^_",61 }],62 "@typescript-eslint/no-empty-object-type": "off",63 "@typescript-eslint/no-require-imports": "off",64 "@typescript-eslint/ban-ts-comment": "warn",65 "no-console": ["warn", { allow: ["warn", "error"] }],66 "prefer-const": "warn",67 "no-control-regex": "off",68 "no-useless-assignment": "warn",69 "no-useless-escape": "warn",70 },71 },72);73