Skip to content

Commit e83059f

Browse files
committed
fix: big refactor and improved tooling
1 parent bb05db1 commit e83059f

File tree

302 files changed

+23844
-34799
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

302 files changed

+23844
-34799
lines changed

.cspell/project-words.txt

+14-9
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ APIKEY
55
APITOKEN
66
APIURL
77
asig
8+
astro
9+
astrojs
810
Buena
911
chrono
1012
chunker
@@ -15,18 +17,22 @@ Codestral
1517
commandline
1618
companys
1719
countrys
20+
datetime
1821
davinci
1922
Davinci
2023
dedup
2124
deepseek
2225
distractor
2326
dosco
2427
fres
28+
frontmatter
2529
fstate
2630
groq
2731
Groq
32+
Hono
2833
huggingface
2934
Jiro
35+
jwtx
3036
Kita
3137
llmclient
3238
logit
@@ -37,6 +43,7 @@ Logprobs
3743
Macbook
3844
minilm
3945
Mixtral
46+
modelinfo
4047
nanos
4148
nemo
4249
Nemo
@@ -50,39 +57,37 @@ Opentable
5057
opentelemetry
5158
parisienne
5259
pegjs
60+
postbuild
5361
qsig
5462
région
63+
reka
5564
rerank
5665
reranker
5766
retval
5867
sandboxed
5968
sdata
69+
shadcn
6070
Signture
6171
sstate
6272
Stonebraker
6373
stopwords
74+
Streamable
6475
strutil
6576
subjobs
6677
Sukiyabashi
6778
superintelligence
6879
textembedding
6980
tika
81+
tsimp
82+
tsup
7083
upsert
7184
upserted
7285
usecase
7386
uuidv
7487
vectordb
7588
vectorize
89+
Vikram
7690
weaviate
7791
Weaviate
7892
xlarge
7993
xstate
80-
astro
81-
astrojs
82-
reka
83-
Hono
84-
shadcn
85-
Streamable
86-
jwtx
87-
datetime
88-
modelinfo

.eslintrc.json

-59
This file was deleted.

.github/dependabot.yml

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# .github/dependabot.yml
2+
version: 2
3+
updates:
4+
# Root package.json
5+
- package-ecosystem: 'npm'
6+
directory: '/'
7+
schedule:
8+
interval: 'weekly'
9+
day: 'monday'
10+
open-pull-requests-limit: 10
11+
versioning-strategy: increase
12+
groups:
13+
typescript-eslint:
14+
patterns:
15+
- '@typescript-eslint/*'
16+
dev-dependencies:
17+
dependency-type: 'development'
18+
19+
# Your ax-llm/ax package in src directory
20+
- package-ecosystem: 'npm'
21+
directory: '/src/ax' # Adjusted to match your src/* workspace pattern
22+
schedule:
23+
interval: 'weekly'
24+
day: 'monday'
25+
groups:
26+
typescript-eslint:
27+
patterns:
28+
- '@typescript-eslint/*'
29+
dev-dependencies:
30+
dependency-type: 'development'
31+
32+
# GitHub Actions
33+
- package-ecosystem: 'github-actions'
34+
directory: '/'
35+
schedule:
36+
interval: 'weekly'
37+
day: 'monday'
38+
commit-message:
39+
prefix: 'ci'
40+
include: 'scope'

.github/workflows/static.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ name: Deploy static content to Pages
44
on:
55
# Runs on pushes targeting the default branch
66
push:
7-
branches: ["main"]
7+
branches: ['main']
88

99
# Allows you to run this workflow manually from the Actions tab
1010
workflow_dispatch:
@@ -18,7 +18,7 @@ permissions:
1818
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
1919
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
2020
concurrency:
21-
group: "pages"
21+
group: 'pages'
2222
cancel-in-progress: false
2323

2424
jobs:
@@ -36,8 +36,8 @@ jobs:
3636
node-version: '20.x'
3737
registry-url: 'https://registry.npmjs.org'
3838
- run: npm ci
39-
- run: npm run doc
4039
- run: npm run test
40+
- run: npm run doc:build
4141
- name: Setup Pages
4242
uses: actions/configure-pages@v5
4343
- name: Upload artifact

.gitignore

+3-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
.idea/*
33
.nyc_output
44
build
5+
dist
56
node_modules
67
test
78
coverage
@@ -16,4 +17,5 @@ demos.json
1617
site/dist
1718
.astro
1819
.tsimp
19-
20+
*.mp4
21+
*.webm

.prettierignore

-7
This file was deleted.

.prettierrc

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"semi": true,
3-
"trailingComma": "none",
4-
"singleQuote": true,
5-
"printWidth": 80
6-
}
2+
"semi": false,
3+
"singleQuote": true,
4+
"trailingComma": "es5",
5+
"printWidth": 80
6+
}

eslint.config.js

+133
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
import tsParser from '@typescript-eslint/parser';
2+
import tsPlugin from '@typescript-eslint/eslint-plugin';
3+
import importPlugin from 'eslint-plugin-import';
4+
import eslintCommentsPlugin from 'eslint-plugin-eslint-comments';
5+
import functionalPlugin from 'eslint-plugin-functional';
6+
import monorepoCopPlugin from 'eslint-plugin-monorepo-cop';
7+
import prettierConfig from 'eslint-config-prettier';
8+
9+
export default [
10+
{
11+
ignores: [
12+
'**/node_modules/**',
13+
'**/dist/**',
14+
'**/coverage/**',
15+
'**/site/**',
16+
'**/.tsimp/**',
17+
'**/*.json'
18+
]
19+
},
20+
{
21+
languageOptions: {
22+
parser: tsParser,
23+
parserOptions: {
24+
project: ['./tsconfig.json', './src/*/tsconfig.json'],
25+
ecmaVersion: 2020,
26+
sourceType: 'module',
27+
},
28+
globals: {
29+
BigInt: true,
30+
console: true,
31+
WebAssembly: true,
32+
},
33+
},
34+
plugins: {
35+
'@typescript-eslint': tsPlugin,
36+
'import': importPlugin,
37+
'eslint-comments': eslintCommentsPlugin,
38+
'functional': functionalPlugin,
39+
'monorepo-cop': monorepoCopPlugin,
40+
},
41+
settings: {
42+
'import/parsers': {
43+
'@typescript-eslint/parser': ['.ts', '.tsx'],
44+
},
45+
},
46+
files: ['**/*.ts', '**/*.tsx'], // Explicitly only match TypeScript files
47+
rules: {
48+
...tsPlugin.configs.recommended.rules,
49+
...eslintCommentsPlugin.configs.recommended.rules,
50+
...functionalPlugin.configs.lite.rules,
51+
...prettierConfig.rules,
52+
53+
'import/extensions': [
54+
'error',
55+
'ignorePackages',
56+
{ js: 'always', ts: 'never', tsx: 'never' }
57+
],
58+
'functional/no-class-inheritance': 'off',
59+
'functional/no-mixed-types': 'off',
60+
'functional/no-classes': 'off',
61+
'functional/no-return-void': 'off',
62+
'functional/no-let': 'off',
63+
'functional/no-loop-statements': 'off',
64+
'functional/no-throw-statements': 'off',
65+
'functional/immutable-data': 'off',
66+
'@typescript-eslint/explicit-module-boundary-types': 'off',
67+
'eslint-comments/disable-enable-pair': [
68+
'error',
69+
{ allowWholeFile: true }
70+
],
71+
'eslint-comments/no-unused-disable': 'error',
72+
'import/order': [
73+
'error',
74+
{ 'newlines-between': 'always', alphabetize: { order: 'asc' } }
75+
],
76+
'sort-imports': [
77+
'error',
78+
{ ignoreDeclarationSort: true, ignoreCase: true }
79+
],
80+
'monorepo-cop/no-relative-import-outside-package': 'error',
81+
'@typescript-eslint/naming-convention': [
82+
'error',
83+
{
84+
selector: ['variable', 'function'],
85+
format: ['camelCase'],
86+
leadingUnderscore: 'allow',
87+
},
88+
{
89+
selector: 'class',
90+
format: ['PascalCase'],
91+
},
92+
{
93+
selector: ['classMethod'],
94+
format: ['camelCase'],
95+
leadingUnderscore: 'allow'
96+
},
97+
{
98+
selector: 'parameter',
99+
format: ['camelCase'],
100+
leadingUnderscore: 'allow'
101+
},
102+
{
103+
selector: 'typeLike',
104+
format: ['PascalCase']
105+
}
106+
]
107+
}
108+
},
109+
{
110+
plugins: {
111+
'@typescript-eslint': tsPlugin,
112+
},
113+
// Only apply to package index files, excluding test files and non-root index files
114+
files: ['./src/*/index.ts'],
115+
rules: {
116+
'@typescript-eslint/naming-convention': [
117+
'error',
118+
{
119+
selector: ['variable', 'function'],
120+
modifiers: ['exported'],
121+
format: ['PascalCase'],
122+
prefix: ['ax']
123+
},
124+
{
125+
selector: ['class', 'interface', 'typeAlias', 'enum', 'typeParameter'],
126+
modifiers: ['exported'],
127+
format: ['PascalCase'],
128+
prefix: ['Ax']
129+
}
130+
]
131+
}
132+
}
133+
];

0 commit comments

Comments
 (0)