Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
545 commits
Select commit Hold shift + click to select a range
a246a8c
Release 1.6.0
felixmosh Apr 22, 2021
0c9feea
fix: handle set state on unmounted component error
felixmosh Apr 22, 2021
9089f54
feat: Preserve active tab per queue
felixmosh Apr 22, 2021
739d5de
small refactor
felixmosh Apr 22, 2021
f181e92
feat: Reset scroll position on page nave
felixmosh Apr 22, 2021
086c14e
refactor: Sync queue status with url
felixmosh Apr 22, 2021
864d476
fix: Prevent polling leak by using intervals, closes #207 (#256)
felixmosh Apr 22, 2021
6c5e85f
Release 1.7.0
felixmosh Apr 22, 2021
a95243d
feat: use bullMQ user friendly name
felixmosh Apr 22, 2021
5528de0
Release 1.7.1
felixmosh Apr 22, 2021
cfbddc1
Update tests
felixmosh Apr 22, 2021
aa81c1c
fix: scroll to top when search changes as well
felixmosh Apr 22, 2021
c7d6944
fix: crash on code is not part of childNode (#257)
felixmosh Apr 22, 2021
31489d6
Release 1.7.2
felixmosh Apr 22, 2021
12cf091
refactor: Replace classnames with clsx
felixmosh Apr 24, 2021
b32fa82
Enable GitHub actions on PR's
felixmosh Apr 26, 2021
8c586fb
Limit GitHub actions to run on PR's against master
felixmosh Apr 26, 2021
6ed2869
fix: lints warnings
felixmosh Apr 26, 2021
e2eb8d3
Clean up package.json
felixmosh Apr 26, 2021
89f1f2f
Re-Clean up package.json
felixmosh Apr 26, 2021
64fc884
refactor: Use Map to save given queues instead of POJO
felixmosh Apr 26, 2021
a74ddfd
Enable @typescript-eslint only on ts/x files
felixmosh Apr 27, 2021
d3f4db5
Move tests to `tests` folder (#260)
felixmosh Apr 27, 2021
3193edd
V2 (#261)
felixmosh Apr 27, 2021
cc4e84a
Release 2.0.0
felixmosh Apr 27, 2021
54b7310
Update README.md
felixmosh Apr 28, 2021
4cef803
Update README.md
felixmosh Apr 28, 2021
6d0e8fb
refactor: Remove client deps from lib's deps (#263)
felixmosh Apr 28, 2021
206d12d
Release 2.0.1
felixmosh Apr 28, 2021
02e545a
Update README.md
felixmosh Apr 28, 2021
ec97f01
Fix typo (bullMQAdapter to BullMQAdapter) (#267)
May 7, 2021
bfc6605
refactor: extract common control code to queueProvider & jobProvider …
felixmosh May 7, 2021
04e6531
Release 2.0.2
felixmosh May 7, 2021
42a1f2a
Update example deps
felixmosh May 7, 2021
82972d1
chore(deps): bump lodash from 4.17.20 to 4.17.21 in /examples/with-au…
dependabot[bot] May 7, 2021
8a1e61c
chore(deps): bump lodash in /examples/with-multiple-instances (#270)
dependabot[bot] May 7, 2021
2bd062f
fix: Update ioredis types & align adapter types, closes #271, #272 (#…
felixmosh May 9, 2021
b65e2b5
Release 2.0.3
felixmosh May 9, 2021
43841e0
fix ejs semicolon (#275)
felixmosh May 15, 2021
a894456
feat: add addQueue and removeQueue methods (#278)
May 21, 2021
e5d4336
Bump deps
felixmosh May 21, 2021
4aba152
Release 2.1.0
felixmosh May 21, 2021
66151f0
Fix blurry fonts
felixmosh May 26, 2021
1556190
Release 2.1.1
felixmosh May 26, 2021
bb602dd
Bump deps
felixmosh May 27, 2021
361edb4
Fix prettier config && reformat the code
felixmosh May 27, 2021
ec5d285
Remove ; from ejs
felixmosh May 27, 2021
4c4b546
Fix type issue
felixmosh May 27, 2021
0235745
Release 2.1.2
felixmosh May 27, 2021
56e6456
Remove eslint-plugin-prettier since it formats differently then prett…
felixmosh May 27, 2021
a67610f
chore(deps): bump dns-packet from 1.3.1 to 1.3.4 (#279)
dependabot[bot] May 28, 2021
3b42f41
Move bull-board to use mono-repo structure (#281)
felixmosh May 29, 2021
b87e4f4
Change version to be the current one
felixmosh May 29, 2021
88897af
Remove private: true
felixmosh May 29, 2021
0616e18
Add descriptions
felixmosh May 29, 2021
d75beb6
Release 3.0.0
felixmosh May 29, 2021
d162f19
add public access
felixmosh May 29, 2021
cbeaaf0
Update README.md
felixmosh May 30, 2021
8b08b59
Update README.md
felixmosh May 30, 2021
3bef802
Add keywords
felixmosh May 29, 2021
717e04f
Update lock files
felixmosh May 29, 2021
b2c6c4a
Add readme to all packages
felixmosh May 30, 2021
57e706e
Release 3.0.1
felixmosh May 30, 2021
b22a36b
Add koa adapter (#285)
felixmosh Jun 1, 2021
bda81c4
Release 3.1.0
felixmosh Jun 1, 2021
1eaf219
Add koa example to readme
felixmosh Jun 1, 2021
840e30a
Add koa example to readme
felixmosh Jun 1, 2021
c6c00f6
Feat: Add pagination (#287)
felixmosh Jun 2, 2021
22fca24
Release 3.2.0
felixmosh Jun 2, 2021
d993aa4
Add fav icon & change the logo to be more consistent between OS's (#288)
felixmosh Jun 2, 2021
14471fe
Add release hooks
felixmosh Jun 2, 2021
6304a1d
Release 3.2.1
felixmosh Jun 2, 2021
7c3f09c
Fix logo
felixmosh Jun 2, 2021
064da28
Release 3.2.2
felixmosh Jun 2, 2021
829cd4e
Update logo in README.md
felixmosh Jun 2, 2021
c1dc3b5
Release 3.2.3
felixmosh Jun 2, 2021
52f9347
fix: point global common typings to use dist (#290)
felixmosh Jun 2, 2021
0901778
fix: compile typings with rest of the lib (#292)
felixmosh Jun 2, 2021
6b27c93
Ignore dist
felixmosh Jun 2, 2021
9624ee2
Prompt only version on release
felixmosh Jun 2, 2021
73bf0f5
Release 3.2.4
felixmosh Jun 2, 2021
156f7ea
Change typings path, related to #289
felixmosh Jun 2, 2021
0f59b30
Add clean task
felixmosh Jun 2, 2021
d80e00f
Move react-paginate to dev-deps
felixmosh Jun 2, 2021
73a0ec7
Release 3.2.5
felixmosh Jun 2, 2021
ba449b3
refactor: start using constants instead of strings
felixmosh Jun 2, 2021
c0420ad
refactor: change example to use package instead of direct paths
felixmosh Jun 2, 2021
ffa0f4a
Release 3.2.6
felixmosh Jun 2, 2021
c0f2899
fix: Show failed jobs as failed in "latest" tab (#293)
felixmosh Jun 7, 2021
8841f34
Release 3.2.7
felixmosh Jun 7, 2021
69d5dee
Update CODE_OF_CONDUCT.md
felixmosh Jun 7, 2021
69b30ca
Update package.json
felixmosh Jun 7, 2021
74d9117
fix: show failed job as "green" in active tab (#296)
felixmosh Jun 12, 2021
fef8d1d
Release 3.2.8
felixmosh Jun 12, 2021
ed7851c
fix: require ejs explicitly, fixes #297
felixmosh Jun 20, 2021
d2c4bed
Release 3.2.9
felixmosh Jun 20, 2021
7894cc0
fix: break long words in logs, data & error stack-trace, fixes #298 (…
felixmosh Jun 22, 2021
89109f9
Release 3.2.10
felixmosh Jun 22, 2021
a91257e
fix: fix @bull-board/ui paths, closes #300 (#301)
felixmosh Jun 23, 2021
8246225
Release 3.2.11
felixmosh Jun 23, 2021
a0d36db
Show successful failed job with a green progress bar
felixmosh Jun 28, 2021
3333296
Add confirmation modal on "dangerous" actions, closes #241 (#302)
felixmosh Jun 28, 2021
7c85849
Release 3.3.0
felixmosh Jun 28, 2021
ef09199
Sort jobs asc
felixmosh Jul 25, 2021
1f0e6e7
Release 3.3.1
felixmosh Jul 25, 2021
e3eaed8
fix: encode job-id, closes #307 (#308)
felixmosh Aug 3, 2021
0e3338c
Release 3.3.2
felixmosh Aug 3, 2021
4d5c1f9
Release 3.3.2
felixmosh Aug 3, 2021
810d381
Release 3.3.3
felixmosh Aug 3, 2021
c61e923
feat: add pause / resume on queue level (#309)
felixmosh Aug 3, 2021
92341b6
Release 3.4.0
felixmosh Aug 3, 2021
d100cc9
fix: Allow bull-board to be bundled with webpack, fixes #310 (#312)
felixmosh Aug 6, 2021
ed6e43c
Release 3.4.1
felixmosh Aug 6, 2021
cf4f47e
Added a filter input to the queue menu (#313)
Jivings Aug 6, 2021
e99317c
Improve search styles & ux
felixmosh Aug 6, 2021
9f3949f
Release 3.5.0
felixmosh Aug 6, 2021
86db4d2
chore(deps): bump path-parse from 1.0.6 to 1.0.7 (#315)
dependabot[bot] Aug 11, 2021
c09b9dd
Move React development dependencies to devDependecies (#317)
koresar Aug 12, 2021
d4b3f5e
Release 3.5.1
felixmosh Aug 12, 2021
fdf18a8
Revert "Sort jobs asc"
felixmosh Aug 12, 2021
941b22a
Release 3.5.2
felixmosh Aug 12, 2021
4d6d593
Bump deps
felixmosh Aug 26, 2021
67d0010
Release 3.5.3
felixmosh Aug 26, 2021
7ac2abe
Rollback @radix-ui/react-dropdown-menu due to https://github.com/radi…
felixmosh Aug 30, 2021
741212a
Release 3.5.4
felixmosh Aug 30, 2021
b1b427d
Add fastify example with Basic Auth
felixmosh Sep 8, 2021
65244ae
Add fastify cookie based auth
felixmosh Sep 9, 2021
946a867
Fix typo
felixmosh Sep 9, 2021
6ce6ad1
fix: fastify auth example
felixmosh Sep 13, 2021
9dfb88a
chore(deps): bump tmpl from 1.0.4 to 1.0.5 (#326)
dependabot[bot] Sep 21, 2021
650dbda
fix: show retry button on failed tab (job can be retried) (#327)
felixmosh Sep 21, 2021
38abf3b
Release 3.5.5
felixmosh Sep 21, 2021
764ca54
Remove unused return value from `createBullBoard()` (#329)
cincodenada Sep 23, 2021
e370d6d
Update README.md
felixmosh Sep 25, 2021
1f7ed0c
Update README.md
felixmosh Sep 25, 2021
8e8935a
chore(deps): bump nth-check from 2.0.0 to 2.0.1 (#328)
dependabot[bot] Sep 28, 2021
82b52d6
feat: Add prefix option to allow multiple queues with the same name, …
felixmosh Sep 28, 2021
ae52d3c
Release 3.6.0
felixmosh Sep 28, 2021
352318e
chore(deps): bump fastify-static in /examples/with-fastify (#337)
dependabot[bot] Oct 6, 2021
157baaa
Add Hapi route options to plugin (#342)
felixmosh Oct 29, 2021
bce4e46
Release 3.7.0
felixmosh Oct 29, 2021
607f147
chore(deps): bump fastify-static in /examples/with-fastify (#343)
dependabot[bot] Oct 29, 2021
7db55cd
add noindex meta tag (#351)
joryhatton Dec 6, 2021
1f84836
Release 3.7.1
felixmosh Dec 6, 2021
f94adb4
Release 3.7.2
felixmosh Dec 6, 2021
f493255
chore(deps): bump fastify-static in /examples/with-fastify-auth (#352)
dependabot[bot] Dec 6, 2021
244cc1b
chore(deps): bump tar from 4.4.13 to 4.4.19 (#355)
dependabot[bot] Dec 6, 2021
7c77d5d
chore(deps-dev): bump axios from 0.21.1 to 0.21.2 (#353)
dependabot[bot] Dec 6, 2021
98a4b09
chore(deps): bump fastify-static from 4.2.3 to 4.4.1 (#354)
dependabot[bot] Dec 6, 2021
b67e870
chore(deps): bump postcss from 7.0.35 to 7.0.39 (#356)
dependabot[bot] Dec 6, 2021
81d1840
feat: add job name formatter (#359)
felixmosh Dec 8, 2021
089405b
fix: handle defaultValue for names when formatter is not exists
felixmosh Dec 8, 2021
4fcc210
Release 3.8.0
felixmosh Dec 8, 2021
7141288
refactor: Make default value for job's name defined at usage
felixmosh Dec 8, 2021
1ea68ec
refactor: Use Map as formatters holder
felixmosh Dec 8, 2021
993a09c
Bump deps
felixmosh Dec 8, 2021
11c1cf4
Release 3.8.1
felixmosh Dec 8, 2021
1df165f
Bump deps
felixmosh Jan 9, 2022
38649ea
Release 3.8.2
felixmosh Jan 9, 2022
3b80219
fix: overlay issue with confirm modal
felixmosh Jan 11, 2022
f36be21
feat: add repeat label & change timeline text, #360
felixmosh Jan 11, 2022
924ce02
Update gitignore
felixmosh Jan 11, 2022
e101e7d
Release 3.9.0
felixmosh Jan 11, 2022
904141d
Add fastify to example deps, #364
felixmosh Jan 12, 2022
e24b9b3
chore(deps): bump follow-redirects from 1.14.6 to 1.14.7 (#365)
dependabot[bot] Jan 19, 2022
7b8cc0c
Add stale bot
felixmosh Jan 19, 2022
1f79f37
update tags of stale bot
felixmosh Jan 19, 2022
ef66368
Show error message
felixmosh Jan 19, 2022
cc00570
chore(deps): bump nanoid from 3.1.30 to 3.2.0 (#369)
dependabot[bot] Jan 22, 2022
c7019c3
enlarge the stale-bot days
felixmosh Jan 26, 2022
233609a
Improve performance (#371)
felixmosh Jan 26, 2022
3aa2c0d
Release 3.9.1
felixmosh Jan 26, 2022
324b3b5
chore(deps): bump node-fetch from 2.6.6 to 2.6.7 (#372)
dependabot[bot] Jan 26, 2022
3eaa55d
Inject at the body
felixmosh Jan 26, 2022
4860f04
fix: hide queue actions when queue is in readOnlyMode
felixmosh Jan 27, 2022
06aa58a
fix: decode queue name to support url special chars, closes #375 (#376)
felixmosh Feb 5, 2022
7f2d264
Release 3.9.2
felixmosh Feb 5, 2022
2cce3b6
Remove console.logs
felixmosh Feb 7, 2022
3d2c2f9
Release 3.9.3
felixmosh Feb 7, 2022
ba7574a
Make lint to error on console.logs
felixmosh Feb 8, 2022
1fcb11f
Bump deps
felixmosh Feb 8, 2022
ce80e2f
fix test
felixmosh Feb 8, 2022
f95e234
Release 3.9.4
felixmosh Feb 8, 2022
6f1b0ff
chore(deps): bump follow-redirects from 1.14.7 to 1.14.8 (#381)
dependabot[bot] Feb 14, 2022
ba9b770
Add canRetry options to queue (#384)
jgillick Feb 19, 2022
4355880
Refactor tests to remove inline snapshots
felixmosh Feb 20, 2022
d8aad3b
Release 3.10.0
felixmosh Feb 20, 2022
44bf385
Bump deps
felixmosh Mar 22, 2022
0e59d30
Update ci steps to use node 14 + 16
felixmosh Mar 22, 2022
e268c90
Change back to node v12 + v14
felixmosh Mar 22, 2022
e4c1d55
Rollback pretty-bytes to v5
felixmosh Mar 22, 2022
a1bcaa9
Limit push action to run only on master branch
felixmosh Mar 22, 2022
8967f90
fix: align attemptsMade to the behavior of BullMQ.
felixmosh Mar 22, 2022
316fd83
Release 3.10.1
felixmosh Mar 22, 2022
fa33eac
chore(deps): bump node-forge from 1.2.1 to 1.3.0
dependabot[bot] Mar 26, 2022
ad2cf2f
chore(deps): bump ansi-regex in /examples/with-fastify-auth
dependabot[bot] Mar 26, 2022
4a08773
fix: check if the job exists, closes #391
felixmosh Mar 28, 2022
df4df25
Release 3.10.2
felixmosh Mar 28, 2022
ef51092
fix: Remove the fade-out effect due to scrollbar issue, fixes #399
felixmosh Apr 8, 2022
1289c0b
Release 3.10.3
felixmosh Apr 8, 2022
e457168
chore(deps): bump minimist in /examples/with-fastify-auth
dependabot[bot] Apr 8, 2022
2374b10
chore(deps): bump minimist from 1.2.5 to 1.2.6
dependabot[bot] Apr 8, 2022
959d6ca
Deps bump
felixmosh Apr 14, 2022
09a46c7
Release 3.10.4
felixmosh Apr 14, 2022
2d279e1
Upgrade deps of examples
felixmosh Apr 19, 2022
084446a
remove empty class
felixmosh Apr 24, 2022
a0ea608
Release 3.10.5
felixmosh Apr 24, 2022
0483d95
Bump deps
felixmosh Apr 24, 2022
d0ba360
Update lock file
felixmosh Apr 24, 2022
94e29c3
fix: resolve @types/react to v17
felixmosh Apr 24, 2022
a876fe0
Release 3.10.6
felixmosh Apr 24, 2022
d4ae7b5
Change min support to 14, 16 in ci
felixmosh Apr 24, 2022
cd70bad
Release 3.10.7
felixmosh Apr 24, 2022
3003733
Add package list to README.md
felixmosh Apr 25, 2022
92f63da
Add connection example
felixmosh May 2, 2022
5f53db7
Upgrade to @fastify/static, closes #408
felixmosh May 3, 2022
33c9677
Update fastify examples
felixmosh May 3, 2022
b25a59e
Release 3.11.0
felixmosh May 3, 2022
34fe2b2
chore(deps): bump ejs from 3.1.6 to 3.1.7 in /examples/with-hapi-auth
dependabot[bot] May 3, 2022
f10188b
chore(deps): bump ejs from 3.1.6 to 3.1.7 in /examples/with-hapi
dependabot[bot] May 3, 2022
3cd1248
chore(deps): bump ejs from 3.1.6 to 3.1.7 in /examples/with-koa
dependabot[bot] May 3, 2022
b094542
Fixes for Apalis
geofmureithi May 26, 2022
d8cd3cd
Updating design and assets
geofmureithi Jun 1, 2022
4a566db
Added Worker management
geofmureithi Jun 4, 2022
a21f249
fix worker_id type
ImSingee Feb 4, 2024
8f6380e
fix Scheduled type
ImSingee Feb 4, 2024
bd49670
Merge pull request #1 from ImSingee/master
geofmureithi Feb 6, 2024
a3831c3
revamp: rewrite the board in rust
geofmureithi May 25, 2024
f3edf67
fix: get things working
geofmureithi Jul 13, 2024
ff986ee
Merge pull request #2 from geofmureithi/chore/rewrite-in-rust
geofmureithi Jul 13, 2024
a4ec11b
Include the static logo
geofmureithi Jul 13, 2024
15da19b
Merge pull request #3 from geofmureithi/fix/logo
geofmureithi Jul 13, 2024
0751812
bump: to the latest apalis version
geofmureithi Nov 22, 2024
37f7c6c
fix: typo
spotlesscoder Mar 29, 2025
2c6aca6
fix typo
spotlesscoder May 1, 2025
e927fea
chore: remove most of unrelated code
geofmureithi Jul 23, 2025
70902a1
Merge pull request #4 from spotlesscoder/patch-1
geofmureithi Sep 22, 2025
664d0e7
chore: checkpoint
geofmureithi Oct 17, 2025
526b5a5
fix: core deps
geofmureithi Oct 17, 2025
cda42c1
improve README.md
geofmureithi Oct 17, 2025
83fa266
Merge branch 'master' into chore/shakedown
geofmureithi Oct 17, 2025
e203062
Merge pull request #6 from apalis-dev/chore/shakedown
geofmureithi Oct 17, 2025
1d95daf
Merge branch 'chore/cleanup'
geofmureithi Oct 18, 2025
86664d4
Initial plan
Copilot Oct 18, 2025
3f600a3
Add comprehensive CI/CD workflows
Copilot Oct 18, 2025
9a97415
Fix workspace config, formatting, and add status badges
Copilot Oct 18, 2025
dda1cde
Add comprehensive project documentation and issue templates
Copilot Oct 18, 2025
dd21475
Add CI/CD documentation and automatic PR labeling
Copilot Oct 18, 2025
3e11f6c
Merge pull request #7 from apalis-dev/copilot/add-ci-cd-configuration
geofmureithi Oct 28, 2025
8b9fcc2
chore(deps): bump codecov/codecov-action from 4 to 5
dependabot[bot] Oct 28, 2025
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
32 changes: 32 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Set default behavior to automatically normalize line endings
* text=auto

# Rust files
*.rs text diff=rust

# Web files
*.js text
*.json text
*.html text
*.css text
*.md text

# Configuration files
*.toml text
*.yml text
*.yaml text

# Shell scripts
*.sh text eol=lf

# Binary files
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.svg binary
*.wasm binary
*.ttf binary
*.woff binary
*.woff2 binary
220 changes: 220 additions & 0 deletions .github/CI_CD_INFRASTRUCTURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,220 @@
# CI/CD Infrastructure

This document provides an overview of the CI/CD infrastructure for apalis-board.

## Overview

The apalis-board repository uses GitHub Actions for continuous integration, deployment, and automated maintenance. The infrastructure is designed to ensure code quality, security, and reliability.

## Workflows

### Core CI Workflows

#### 1. All Checks (`ci.yml`)
**Trigger**: Push to master/main, Pull Requests
**Purpose**: Combined workflow that serves as the main status check

This workflow runs:
- Rust compilation checks
- Test suite
- Code formatting validation
- Clippy linting
- Frontend build
- Security audit

**Status**: This is the primary status check for PRs

#### 2. Rust CI (`rust-ci.yml`)
**Trigger**: Push to master/main, Pull Requests
**Purpose**: Comprehensive Rust quality checks

Jobs:
- **check**: Verifies all crates compile
- **test**: Runs test suites for types and api crates
- **fmt**: Validates code formatting with rustfmt
- **clippy**: Lints code with clippy
- **features**: Tests feature combinations (actix, axum)

#### 3. Frontend Build (`frontend-build.yml`)
**Trigger**: Push to master/main, Pull Requests
**Purpose**: Builds the Leptos WASM frontend

Steps:
1. Install Rust with wasm32-unknown-unknown target
2. Install Trunk (WASM bundler)
3. Install npm dependencies (Tailwind CSS)
4. Build frontend with Trunk
5. Upload build artifacts

### Release Workflow

#### 4. Release (`release.yml`)
**Trigger**: Version tags (v*.*.*)
**Purpose**: Automated release creation and artifact publishing

The workflow:
1. Creates a GitHub release
2. Builds frontend and packages as tar.gz
3. Builds and packages Rust crates
4. Uploads all artifacts to the release

**Usage**: Push a version tag to trigger
```bash
git tag -a v1.0.0 -m "Release v1.0.0"
git push origin v1.0.0
```

### Security and Quality

#### 5. Security Audit (`security.yml`)
**Trigger**:
- Push/PR on Cargo.toml or Cargo.lock changes
- Weekly schedule (Mondays at 9 AM UTC)

Jobs:
- **audit**: Scans for security vulnerabilities with cargo-audit
- **deny**: Checks dependencies with cargo-deny for:
- Known security advisories
- License compliance
- Banned/yanked crates
- Multiple versions of same crate

#### 6. Code Coverage (`coverage.yml`)
**Trigger**: Push to master/main, Pull Requests
**Purpose**: Generates and reports code coverage

Uses:
- cargo-tarpaulin for coverage generation
- Codecov for coverage reporting and tracking

#### 7. Documentation Check (`docs.yml`)
**Trigger**:
- Push/PR to master/main
- Weekly schedule (Sundays at midnight UTC)

Jobs:
- **link-check**: Validates markdown links
- **rustdoc**: Builds Rust documentation with warnings as errors

### Maintenance

#### 8. Tailwind CSS Check (`nodejs.yml`)
**Trigger**: Push to master/main, Pull Requests
**Purpose**: Validates npm dependencies

Checks:
- Installs npm dependencies
- Checks for outdated packages
- Runs security audit

#### 9. Cache Warmup (`cache-warmup.yml`)
**Trigger**:
- Weekly schedule (Sundays at midnight UTC)
- Manual workflow dispatch

**Purpose**: Pre-warms caches to improve CI performance

Jobs:
- Builds all Rust crates to populate cargo cache
- Installs npm dependencies to populate npm cache

#### 10. Dependabot Configuration (`dependabot.yml`)
**Schedule**: Weekly (Mondays)
**Purpose**: Automated dependency updates

Monitors:
- Cargo dependencies (Rust)
- npm dependencies (Tailwind CSS)
- GitHub Actions versions

Creates PRs for updates grouped by ecosystem.

## Caching Strategy

The CI uses multiple caching strategies:

1. **Rust Cache** (Swatinem/rust-cache@v2)
- Caches compiled dependencies
- Shared across workflows with `shared-key`
- Significantly reduces build times

2. **npm Cache**
- Built into setup-node action
- Caches node_modules dependencies

3. **Weekly Warmup**
- Refreshes caches weekly
- Ensures CI has latest pre-compiled dependencies

## Security Features

1. **cargo-audit**: Checks for known security vulnerabilities
2. **cargo-deny**: Enforces security and licensing policies
3. **Dependabot**: Automated security updates
4. **npm audit**: Checks npm dependencies for vulnerabilities

## Status Badges

The README includes badges for:
- All Checks status
- Rust CI status
- Frontend Build status
- Security Audit status
- Code Coverage percentage

## Troubleshooting

### Workflow Failures

**Rust CI fails on formatting**:
```bash
cargo fmt --all
```

**Rust CI fails on clippy**:
```bash
cargo clippy --workspace --all-features
```

**Frontend build fails**:
```bash
cd crates/board
trunk build
```

**Tests fail**:
```bash
cargo test --workspace
```

### Common Issues

1. **Workspace member not found**: Examples are excluded from workspace as they depend on external repos
2. **Cache issues**: Manually trigger cache-warmup workflow or wait for weekly refresh
3. **Outdated dependencies**: Wait for Dependabot PRs or run `cargo update` / `npm update`

## Manual Triggers

Some workflows can be triggered manually:

1. **Cache Warmup**: Go to Actions → Cache Warmup → Run workflow
2. **Release**: Push a version tag (preferred over manual trigger)

## Contributing

When contributing, ensure:
- All CI checks pass before requesting review
- Follow the PR template
- Update documentation if needed
- Add tests for new features

For more details, see [CONTRIBUTING.md](../CONTRIBUTING.md).

## Future Improvements

Potential enhancements:
- [ ] Nightly builds for testing against Rust nightly
- [ ] Performance benchmarking
- [ ] Automated changelog generation
- [ ] Deploy previews for frontend changes
- [ ] Integration tests with example services
48 changes: 48 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
name: Bug Report
about: Create a report to help us improve
title: '[BUG] '
labels: bug
assignees: ''
---

## Bug Description

A clear and concise description of what the bug is.

## To Reproduce

Steps to reproduce the behavior:
1. Go to '...'
2. Click on '...'
3. Scroll down to '...'
4. See error

## Expected Behavior

A clear and concise description of what you expected to happen.

## Actual Behavior

A clear and concise description of what actually happened.

## Screenshots

If applicable, add screenshots to help explain your problem.

## Environment

- OS: [e.g., macOS, Linux, Windows]
- Rust version: [e.g., 1.70.0]
- Node.js version: [e.g., 20.0.0]
- Browser (if frontend issue): [e.g., Chrome 115, Firefox 115]

## Additional Context

Add any other context about the problem here.

## Logs

```
Paste any relevant logs here
```
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: GitHub Discussions
url: https://github.com/apalis-dev/apalis-board/discussions
about: Ask questions and discuss ideas with the community
- name: Apalis Core Repository
url: https://github.com/geofmureithi/apalis
about: For issues related to the apalis core library
33 changes: 33 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: Documentation Issue
about: Report an issue with documentation
title: '[DOCS] '
labels: documentation
assignees: ''
---

## Documentation Issue

Describe the documentation issue clearly.

## Location

Where is the documentation issue located?
- [ ] README.md
- [ ] CONTRIBUTING.md
- [ ] Code comments
- [ ] Rustdoc
- [ ] Examples
- [ ] Other:

## Current Documentation

What does the current documentation say?

## Suggested Improvement

What should it say instead?

## Additional Context

Add any other context about the documentation issue here.
44 changes: 44 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
name: Feature Request
about: Suggest an idea for this project
title: '[FEATURE] '
labels: enhancement
assignees: ''
---

## Feature Description

A clear and concise description of the feature you'd like to see.

## Problem Statement

Is your feature request related to a problem? Please describe.
<!-- e.g., I'm always frustrated when [...] -->

## Proposed Solution

Describe the solution you'd like.

## Alternatives Considered

Describe any alternative solutions or features you've considered.

## Benefits

What are the benefits of implementing this feature?
-
-

## Implementation Ideas

If you have ideas about how to implement this, please share them.

## Additional Context

Add any other context, screenshots, or examples about the feature request here.

## Would you be willing to implement this?

- [ ] Yes, I can submit a PR
- [ ] No, but I can help test
- [ ] I need guidance on how to implement this
Loading
Loading