Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 15 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
root = true

[*]
indent_style = space
indent_style = tab
indent_size = 4
charset = utf-8
trim_trailing_whitespace = true
Expand All @@ -10,5 +10,18 @@ end_of_line = lf
# editorconfig-tools is unable to ignore longs strings or urls
max_line_length = null

[{*.yaml,*.yml,*.json}]
[*.ts]
indent_style = tab
indent_size = 4

[*.js]
indent_style = tab
indent_size = 4

[*.yaml]
indent_style = space
indent_size = 2

[*.yml]
indent_style = space
indent_size = 2
11 changes: 10 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
.DS_Store
.idea
.vscode
.venv
.mise.toml

**/.yarn/*
!**/.yarn/patches
!**/.yarn/plugins
!**/.yarn/releases
!**/.yarn/sdks
!**/.yarn/versions

node_modules
.env.local
27 changes: 27 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[javascriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[jsonc]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[yaml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"files.trimTrailingWhitespace": false
}
}
942 changes: 942 additions & 0 deletions .yarn/releases/yarn-4.10.3.cjs

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions .yarnrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
enableGlobalCache: true

nodeLinker: node-modules

yarnPath: .yarn/releases/yarn-4.10.3.cjs
27 changes: 27 additions & 0 deletions biome.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
"formatter": {
"includes": ["**", "!**/LICENSE.md"],
"formatWithErrors": true,
"indentStyle": "tab",
"indentWidth": 4
},
"javascript": {
"formatter": {
"quoteStyle": "single",
"semicolons": "always",
"trailingCommas": "all",
"lineWidth": 120,
"indentStyle": "tab",
"indentWidth": 4,
"quoteProperties": "preserve",
"lineEnding": "lf"
}
},
"linter": {
"enabled": false
},
"assist": {
"enabled": false
}
}
63 changes: 63 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
import prettier from 'eslint-config-prettier';
import tsEslint from 'typescript-eslint';

// eslint-disable-next-line import/extensions -- todo: the import/extensions rule should be replaced with something that can handle exports in a package.json
import apify from '@apify/eslint-config/ts';

export default [
{
ignores: ['**/dist', 'node_modules', 'coverage', '**/*.d.ts', '.yarn/**/*'],
},
...apify,
prettier,
{
languageOptions: {
parser: tsEslint.parser,
parserOptions: {
project: 'tsconfig.eslint.json',
},
},
},
{
plugins: {
'@typescript-eslint': tsEslint.plugin,
},
rules: {
'no-use-before-define': 'off',
'@typescript-eslint/no-use-before-define': ['error', { functions: false }],

'no-console': 'off',

'no-param-reassign': 'off',
// We have env variables with _ in their name
'no-underscore-dangle': 'off',

// we do default exports
// TODO: remove once moved to yargs
'import/no-default-export': 'off',

'@typescript-eslint/consistent-type-imports': [
'error',
{
disallowTypeAnnotations: false,
},
],
'@typescript-eslint/consistent-type-definitions': ['error', 'interface'],

// Not ideal, but we still use any for simplicity
'@typescript-eslint/no-explicit-any': 'off',

// '@typescript-eslint/array-type': 'error',
// '@typescript-eslint/no-empty-object-type': 'off',
},
},
{
files: ['zenhub-github-sync/**/*'],
rules: {
'no-console': 'off',
'consistent-return': 'off',
'import/extensions': 'off',
'dot-notation': 'off',
},
},
];
25 changes: 25 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"name": "apify-workflows",
"private": true,
"packageManager": "yarn@4.10.3",
"volta": {
"node": "24.10.0",
"yarn": "4.10.3"
},
"workspaces": [
"zenhub-github-sync"
],
"devDependencies": {
"@apify/eslint-config": "^1.1.0",
"@biomejs/biome": "^2.2.4",
"eslint": "^9.37.0",
"eslint-config-prettier": "^10.1.8",
"typescript-eslint": "^8.46.1"
},
"scripts": {
"lint": "eslint",
"lint:fix": "eslint --fix",
"format": "biome format",
"format:fix": "biome format --write"
}
}
51 changes: 20 additions & 31 deletions renovate.json
Original file line number Diff line number Diff line change
@@ -1,33 +1,22 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base"
],
"schedule": [
"before 3am on the last day of the month"
],
"regexManagers": [
{
"fileMatch": [
".*yaml$"
],
"matchStrings": [
"datasource=(?<datasource>.*?) depName=(?<depName>.*?)( versioning=(?<versioning>.*?))?\\s.*?_VERSION:\\s(?<currentValue>.*)\\s"
],
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
}
],
"packageRules": [
{
"groupName": "all non-major dependencies",
"groupSlug": "all-minor-patch",
"matchPackagePatterns": [
"*"
],
"matchUpdateTypes": [
"minor",
"patch"
]
}
]
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:base"],
"schedule": ["before 3am on the last day of the month"],
"regexManagers": [
{
"fileMatch": [".*yaml$"],
"matchStrings": [
"datasource=(?<datasource>.*?) depName=(?<depName>.*?)( versioning=(?<versioning>.*?))?\\s.*?_VERSION:\\s(?<currentValue>.*)\\s"
],
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
}
],
"packageRules": [
{
"groupName": "all non-major dependencies",
"groupSlug": "all-minor-patch",
"matchPackagePatterns": ["*"],
"matchUpdateTypes": ["minor", "patch"]
}
]
}
3 changes: 3 additions & 0 deletions tsconfig.eslint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"include": ["zenhub-github-sync/src/**/*", "eslint.config.mjs"]
}
Loading