# SilentCronX Features

SilentCronX is built as a custom-owned Node.js SDK for reliable background processing.

## Scheduling

- 5-field cron expressions, with optional seconds support in the parser.
- Delayed one-time jobs.
- Fixed interval recurring jobs.
- Immediate jobs through `runNow`.
- Pause, resume, cancel, start, stop, and shutdown controls.

## Queue and Workers

- Named queues with concurrency.
- Job priority support.
- Queue size limits and rate-limit options.
- Pause, resume, clear, and inspect queues at runtime.
- Queue statistics for dashboards and operations panels.
- Worker-thread module execution for CPU-heavy tasks.
- Inline worker fallback with a warning, so users can migrate safely to module workers.

## Reliability

- Fixed, linear, and exponential retry backoff.
- Retry jitter and maximum retry delay caps.
- Per-job timeout.
- `AbortSignal` cancellation.
- Prevent-overlap locks.
- Global max concurrency.
- Graceful shutdown for application exit.

## Observability

- Lifecycle events for scheduled, started, success, failed, timeout, retry, cancel, pause, resume, queue drain, and scheduler shutdown.
- In-memory event history with configurable retention through `eventHistoryLimit`.
- `getStatus(jobId)` for one job.
- `getJobs()` for all stored jobs.
- `getHealth()` for scheduler, queue, worker, and storage state.
- Custom logger support.

## Customization

- Custom storage adapter.
- Custom logger.
- Custom timezone setting.
- Custom payload size limit.
- Custom retry policy.
- Custom retry jitter and max delay caps.
- Custom queue processor per queue or per job.
- Custom worker module path and export name.

## Compatibility

- Node.js 18 and newer.
- TypeScript-first API.
- ESM and CommonJS builds.
- React, React Native, Android, and other clients can connect through backend HTTP/API routes.
- Runtime dependency-free SDK package code.
