@@ -139,3 +139,121 @@ const app = new Elysia()
139139 })
140140 .listen (8080 )
141141` ` `
142+
143+ ## Predefined patterns
144+
145+ You can use predefined patterns from ` @elysiajs / cron / schelude `
146+ ` ` ` typescript
147+ import { Elysia } from ' elysia'
148+ import { cron } from ' @elysiajs/cron'
149+ import { Patterns } from ' @elysiajs/cron/schelude'
150+
151+ const app = new Elysia ()
152+ use (
153+ cron ({
154+ name: ' heartbeat' ,
155+ pattern: Patterns .everySecond (),
156+ run() {
157+ console .log (" Heartbeat" )
158+ }
159+ }
160+ )
161+ .get (' /stop' , ({ store : { cron : { heartbeat } } }) => {
162+ heartbeat .stop ()
163+
164+ return ' Stop heartbeat'
165+ })
166+ .listen (8080 )
167+ ` ` `
168+
169+
170+ ### Functions
171+
172+ Function | Description
173+ ------------- | -------------
174+ ` .everySenconds (2 )` | Run the task every 2 seconds
175+ ` .everyMinutes (5 )` | Run the task every 5 minutes
176+ ` .everyHours (3 )` | Run the task every 3 hours
177+ ` .everyHoursAt (3 , 15 )` | Run the task every 3 hours at 15 minutes
178+ ` .everyDayAt (' 04:19' )` | Run the task every day at 04:19
179+ ` .everyWeekOn (Patterns .MONDAY , ' 19:30' )` | Run the task every Monday at 19:30
180+ ` .everyWeekdayAt (' 17:00' )` | Run the task every day from Monday to Friday at 17:00
181+ ` .everyWeekendAt (' 11:00' )` | Run the task on Saturday and Sunday at 11:00
182+
183+ ### Function aliases to constants
184+
185+ Function | Constant
186+ ------------- | -------------
187+ ` .everySecond ()` | EVERY_SECOND
188+ ` .everyMinute ()` | EVERY_MINUTE
189+ ` .hourly ()` | EVERY_HOUR
190+ ` .daily ()` | EVERY_DAY_AT_MIDNIGHT
191+ ` .everyWeekday ()` | EVERY_WEEKDAY
192+ ` .everyWeekend ()` | EVERY_WEEKEND
193+ ` .weekly ()` | EVERY_WEEK
194+ ` .monthly ()` | EVERY_1ST_DAY_OF_MONTH_AT_MIDNIGHT
195+ ` .everyQuarter ()` | EVERY_QUARTER
196+ ` .yearly ()` | EVERY_YEAR
197+
198+ ### Constants
199+
200+ Constant | Pattern
201+ ------------- | -------------
202+ ` .EVERY_SECOND ` | ` * * * * * * `
203+ ` .EVERY_5_SECONDS ` | ` */ 5 * * * * * `
204+ ` .EVERY_10_SECONDS ` | ` */ 10 * * * * * `
205+ ` .EVERY_30_SECONDS ` | ` */ 30 * * * * * `
206+ ` .EVERY_MINUTE ` | ` */ 1 * * * * `
207+ ` .EVERY_5_MINUTES ` | ` 0 */ 5 * * * * `
208+ ` .EVERY_10_MINUTES ` | ` 0 */ 10 * * * * `
209+ ` .EVERY_30_MINUTES ` | ` 0 */ 30 * * * * `
210+ ` .EVERY_HOUR ` | ` 0 0 - 23 / 1 * * * `
211+ ` .EVERY_2_HOURS ` | ` 0 0 - 23 / 2 * * * `
212+ ` .EVERY_3_HOURS ` | ` 0 0 - 23 / 3 * * * `
213+ ` .EVERY_4_HOURS ` | ` 0 0 - 23 / 4 * * * `
214+ ` .EVERY_5_HOURS ` | ` 0 0 - 23 / 5 * * * `
215+ ` .EVERY_6_HOURS ` | ` 0 0 - 23 / 6 * * * `
216+ ` .EVERY_7_HOURS ` | ` 0 0 - 23 / 7 * * * `
217+ ` .EVERY_8_HOURS ` | ` 0 0 - 23 / 8 * * * `
218+ ` .EVERY_9_HOURS ` | ` 0 0 - 23 / 9 * * * `
219+ ` .EVERY_10_HOURS ` | ` 0 0 - 23 / 10 * * * `
220+ ` .EVERY_11_HOURS ` | ` 0 0 - 23 / 11 * * * `
221+ ` .EVERY_12_HOURS ` | ` 0 0 - 23 / 12 * * * `
222+ ` .EVERY_DAY_AT_1AM ` | ` 0 01 * * * `
223+ ` .EVERY_DAY_AT_2AM ` | ` 0 02 * * * `
224+ ` .EVERY_DAY_AT_3AM ` | ` 0 03 * * * `
225+ ` .EVERY_DAY_AT_4AM ` | ` 0 04 * * * `
226+ ` .EVERY_DAY_AT_5AM ` | ` 0 05 * * * `
227+ ` .EVERY_DAY_AT_6AM ` | ` 0 06 * * * `
228+ ` .EVERY_DAY_AT_7AM ` | ` 0 07 * * * `
229+ ` .EVERY_DAY_AT_8AM ` | ` 0 08 * * * `
230+ ` .EVERY_DAY_AT_9AM ` | ` 0 09 * * * `
231+ ` .EVERY_DAY_AT_10AM ` | ` 0 10 * * * `
232+ ` .EVERY_DAY_AT_11AM ` | ` 0 11 * * * `
233+ ` .EVERY_DAY_AT_NOON ` | ` 0 12 * * * `
234+ ` .EVERY_DAY_AT_1PM ` | ` 0 13 * * * `
235+ ` .EVERY_DAY_AT_2PM ` | ` 0 14 * * * `
236+ ` .EVERY_DAY_AT_3PM ` | ` 0 15 * * * `
237+ ` .EVERY_DAY_AT_4PM ` | ` 0 16 * * * `
238+ ` .EVERY_DAY_AT_5PM ` | ` 0 17 * * * `
239+ ` .EVERY_DAY_AT_6PM ` | ` 0 18 * * * `
240+ ` .EVERY_DAY_AT_7PM ` | ` 0 19 * * * `
241+ ` .EVERY_DAY_AT_8PM ` | ` 0 20 * * * `
242+ ` .EVERY_DAY_AT_9PM ` | ` 0 21 * * * `
243+ ` .EVERY_DAY_AT_10PM ` | ` 0 22 * * * `
244+ ` .EVERY_DAY_AT_11PM ` | ` 0 23 * * * `
245+ ` .EVERY_DAY_AT_MIDNIGHT ` | ` 0 0 * * * `
246+ ` .EVERY_WEEK ` | ` 0 0 * * 0 `
247+ ` .EVERY_WEEKDAY ` | ` 0 0 * * 1 - 5 `
248+ ` .EVERY_WEEKEND ` | ` 0 0 * * 6 ,0 `
249+ ` .EVERY_1ST_DAY_OF_MONTH_AT_MIDNIGHT ` | ` 0 0 1 * * `
250+ ` .EVERY_1ST_DAY_OF_MONTH_AT_NOON ` | ` 0 12 1 * * `
251+ ` .EVERY_2ND_HOUR ` | ` 0 */ 2 * * * `
252+ ` .EVERY_2ND_HOUR_FROM_1AM_THROUGH_11PM ` | ` 0 1 - 23 / 2 * * * `
253+ ` .EVERY_2ND_MONTH ` | ` 0 0 1 */ 2 * `
254+ ` .EVERY_QUARTER ` | ` 0 0 1 */ 3 * `
255+ ` .EVERY_6_MONTHS ` | ` 0 0 1 */ 6 * `
256+ ` .EVERY_YEAR ` | ` 0 0 1 1 * `
257+ ` .EVERY_30_MINUTES_BETWEEN_9AM_AND_5PM ` | ` 0 */ 30 9 - 17 * * * `
258+ ` .EVERY_30_MINUTES_BETWEEN_9AM_AND_6PM ` | ` 0 */ 30 9 - 18 * * * `
259+ ` .EVERY_30_MINUTES_BETWEEN_10AM_AND_7PM ` | ` 0 */ 30 10 - 19 * * * `
0 commit comments