{"id":22208302,"url":"https://github.com/steenhansen/clojure-reloadable-services","last_synced_at":"2025-03-25T04:36:13.402Z","repository":{"id":149759769,"uuid":"190122055","full_name":"steenhansen/clojure-reloadable-services","owner":"steenhansen","description":"Clojure example of re-startable cron-jobs and web-servers ","archived":false,"fork":false,"pushed_at":"2019-06-04T07:26:00.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-30T04:42:40.225Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/steenhansen.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2019-06-04T03:24:51.000Z","updated_at":"2019-06-04T07:26:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"74ff60bc-e1a3-4aaa-a655-8794705ef770","html_url":"https://github.com/steenhansen/clojure-reloadable-services","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steenhansen%2Fclojure-reloadable-services","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steenhansen%2Fclojure-reloadable-services/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steenhansen%2Fclojure-reloadable-services/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/steenhansen%2Fclojure-reloadable-services/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/steenhansen","download_url":"https://codeload.github.com/steenhansen/clojure-reloadable-services/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245401372,"owners_count":20609163,"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":[],"created_at":"2024-12-02T19:17:28.714Z","updated_at":"2025-03-25T04:36:13.356Z","avatar_url":"https://github.com/steenhansen.png","language":"Clojure","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n\n# clojure-reloadable-services\n\nThis project shows clean restarting of Clojure programs in CIDER that use cron jobs and web servers without issuing any special commands from the command line.\n\nNo need to use \"(.stop server)\" when using [ring.adapter.jetty](https://github.com/ring-clojure/ring/wiki/Getting-Started) for serving web pages. The web service is automatically stopped so that no \"java.net.BindException\" errors occur on restart.\n\nCron jobs using [Overtone/at-at](https://github.com/overtone/at-at) \"Ahead-of-time function scheduler\" are shut down and re-started without any interaction, stopping run-away threads.\n\n# To Run\n  - start Emacs\n  - load \"clojure-reloadable-services/src/reload/web-cron.clj\"\n  - M-x for \"cider-jack-in\"\n  - \"Load this buffer\" with web-cron.clj\n    - via the menu using \"CIDER Eval | Load this buffer\"\n    - or via C-c C-k \n  - in the CIDER window enter (reload.web-cron/main)\n\n# View web-servers at\n  - http://localhost:3000/\n  - http://localhost:3001/\n\n# Cron-jobs output to Emacs\n\n# To see point of program\n  - Change code\n  - \"Load this buffer\" with web-cron.clj\n  - (reload.web-cron/main)\n\n# Stop web-servers and cron-jobs with\n  - (reload.web-cron/kill-services)\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteenhansen%2Fclojure-reloadable-services","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsteenhansen%2Fclojure-reloadable-services","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteenhansen%2Fclojure-reloadable-services/lists"}