{"id":19990870,"url":"https://github.com/jlucansky/Quartzmin","last_synced_at":"2025-05-04T10:30:49.829Z","repository":{"id":33899030,"uuid":"163424300","full_name":"jlucansky/Quartzmin","owner":"jlucansky","description":"Quartzmin is powerful, easy to use web management tool for Quartz.NET","archived":false,"fork":false,"pushed_at":"2023-11-14T14:34:03.000Z","size":1875,"stargazers_count":564,"open_issues_count":41,"forks_count":184,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-10T02:17:32.364Z","etag":null,"topics":["admin","core","dotnet","quartz","ui","web"],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jlucansky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-28T15:28:02.000Z","updated_at":"2025-03-24T12:55:49.000Z","dependencies_parsed_at":"2024-05-31T03:52:48.376Z","dependency_job_id":"d4d19a92-b527-441d-9aea-d1a21432a0c3","html_url":"https://github.com/jlucansky/Quartzmin","commit_stats":{"total_commits":28,"total_committers":3,"mean_commits":9.333333333333334,"dds":0.0714285714285714,"last_synced_commit":"246a4fe64339ad8cdd4b2c6c7d2336cb110d8300"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlucansky%2FQuartzmin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlucansky%2FQuartzmin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlucansky%2FQuartzmin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jlucansky%2FQuartzmin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jlucansky","download_url":"https://codeload.github.com/jlucansky/Quartzmin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252319994,"owners_count":21729055,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["admin","core","dotnet","quartz","ui","web"],"created_at":"2024-11-13T04:51:30.672Z","updated_at":"2025-05-04T10:30:47.684Z","avatar_url":"https://github.com/jlucansky.png","language":"C#","readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/logo.png\" height=\"150\"\u003e\n\u003c/p\u003e\n\n---\n\n[![NuGet](https://img.shields.io/nuget/v/Quartzmin.svg)](https://www.nuget.org/packages/Quartzmin)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n\nQuartzmin is powerful, easy to use web management tool for Quartz.NET\n\nQuartzmin can be used within your existing application with minimum effort as a Quartz.NET plugin when it automatically creates embedded web server. Or it can be plugged into your existing OWIN-based web application as a middleware.\n\n\u003e [Quartz.NET](https://www.quartz-scheduler.net) is a full-featured, open source job scheduling system that can be used from smallest apps to large scale enterprise systems.\n\n![Demo](https://raw.githubusercontent.com/jlucansky/public-assets/master/Quartzmin/demo.gif)\n\nThe goal of this project is to provide convenient tool to utilize most of the functionality that Quartz.NET enables. The biggest challenge was to create a simple yet effective editor of job data map which is heart of Quartz.NET. Every job data map item is strongly typed and Quartzmin can be easily extended with a custom editor for your specific type beside standard supported types such as String, Integer, DateTime and so on. \n\nQuartzmin was created with **Semantic UI** and **Handlebars.Net** as the template engine.\n\n## Features\n- Add, modify jobs and triggers\n- Add, modify calendars (Annual, Cron, Daily, Holiday, Monthly, Weekly)\n- Change trigger type to Cron, Simple, Calendar Interval or Daily Time Interval\n- Set typed job data map values (bool, DateTime, int, float, long, double, decimal, string, byte[])\n- Create custom type editor for complex type in job data map\n- Manage scheduler state (standby, shutdown)\n- Pause and resume job and trigger groups\n- Pause and resume triggers individually\n- Pause and resume all triggers for specific job\n- Trigger specific job immediately\n- Watch currently executing jobs\n- Interrupt executing job\n- See next scheduled dates for Cron\n- See recent job history, state and error messages\n\n## Install\nQuartzmin is available on [nuget.org](https://www.nuget.org/packages/Quartzmin)\n\nTo install Quartzmin, run the following command in the Package Manager Console\n```powershell\nPM\u003e Install-Package Quartzmin\n```\n## Minimum requirements\n- .NET Framework 4.5.2 \n- .NET Standard 2.0\n\n## Usage\n### Embedded web server\nEverything you should do is just install [Quartzmin.SelfHost](https://www.nuget.org/packages/Quartzmin.SelfHost) package and configure `QuartzminPlugin` and `ExecutionHistoryPlugin` to support histograms and statistics.\n\nRun the following command in the Package Manager Console:\n```powershell\nPM\u003e Install-Package Quartzmin.SelfHost\n```\nAdd to your `App.config` file:\n```xml\n\u003cconfiguration\u003e\n  \u003cconfigSections\u003e\n    \u003csection name=\"quartz\" type=\"System.Configuration.NameValueFileSectionHandler\" /\u003e\n  \u003c/configSections\u003e\n\n  \u003cquartz\u003e\n    \u003cadd key=\"quartz.plugin.quartzmin.type\" value=\"Quartzmin.SelfHost.QuartzminPlugin, Quartzmin.SelfHost\" /\u003e\n    \u003cadd key=\"quartz.plugin.quartzmin.url\" value=\"http://localhost:5000\" /\u003e\n      \n    \u003cadd key=\"quartz.plugin.recentHistory.type\" value=\"Quartz.Plugins.RecentHistory.ExecutionHistoryPlugin, Quartz.Plugins.RecentHistory\" /\u003e\n    \u003cadd key=\"quartz.plugin.recentHistory.storeType\" value=\"Quartz.Plugins.RecentHistory.Impl.InProcExecutionHistoryStore, Quartz.Plugins.RecentHistory\" /\u003e\n  \u003c/quartz\u003e\n\u003c/configuration\u003e\n```\nStart Quartz.NET scheduler somewhere:\n```csharp\nStdSchedulerFactory.GetDefaultScheduler().Result.Start();\n```\n\n### OWIN middleware\nAdd to your `Startup.cs` file:\n```csharp\npublic void Configuration(IAppBuilder app)\n{\n    app.UseQuartzmin(new QuartzminOptions()\n    {\n        Scheduler = StdSchedulerFactory.GetDefaultScheduler().Result\n    });\n}\n```\n\n### ASP.NET Core middleware\nAdd to your `Startup.cs` file:\n```csharp\npublic void ConfigureServices(IServiceCollection services)\n{\n    services.AddQuartzmin();\n}\n\npublic void Configure(IApplicationBuilder app)\n{\n    app.UseQuartzmin(new QuartzminOptions()\n    {\n        Scheduler = StdSchedulerFactory.GetDefaultScheduler().Result\n    });\n}\n```\n\n## Notes\nIn clustered environment, it make more sense to host Quarzmin on single dedicated Quartz.NET node in standby mode and implement own `IExecutionHistoryStore` depending on database or ORM framework you typically incorporate. Every clustered Quarz.NET node should be configured with `ExecutionHistoryPlugin` and only dedicated node for management may have `QuartzminPlugin`.\n\n\n## License\nThis project is made available under the MIT license. See [LICENSE](LICENSE) for details.\n","funding_links":[],"categories":["C\\#"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjlucansky%2FQuartzmin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjlucansky%2FQuartzmin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjlucansky%2FQuartzmin/lists"}