{"id":28254754,"url":"https://github.com/practicalli/banking-on-clojure-webapp","last_synced_at":"2025-09-02T08:37:31.294Z","repository":{"id":43224956,"uuid":"280480477","full_name":"practicalli/banking-on-clojure-webapp","owner":"practicalli","description":"Online banking application written in Clojure, with unit tests and Clojure specifications","archived":false,"fork":false,"pushed_at":"2025-04-15T09:00:15.000Z","size":132,"stargazers_count":16,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"live","last_synced_at":"2025-05-19T20:17:33.195Z","etag":null,"topics":["clojure","clojure-spec","clojure-test","generative-testing","repl"],"latest_commit_sha":null,"homepage":"https://practicalli.github.io/clojure-webapps/projects/banking-on-clojure/","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/practicalli.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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},"funding":{"github":["practicalli-johnny"]}},"created_at":"2020-07-17T17:01:57.000Z","updated_at":"2025-05-09T16:52:30.000Z","dependencies_parsed_at":"2024-03-11T04:23:09.728Z","dependency_job_id":null,"html_url":"https://github.com/practicalli/banking-on-clojure-webapp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/practicalli/banking-on-clojure-webapp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/practicalli%2Fbanking-on-clojure-webapp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/practicalli%2Fbanking-on-clojure-webapp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/practicalli%2Fbanking-on-clojure-webapp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/practicalli%2Fbanking-on-clojure-webapp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/practicalli","download_url":"https://codeload.github.com/practicalli/banking-on-clojure-webapp/tar.gz/refs/heads/live","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/practicalli%2Fbanking-on-clojure-webapp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260096618,"owners_count":22958083,"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":["clojure","clojure-spec","clojure-test","generative-testing","repl"],"created_at":"2025-05-19T20:15:34.726Z","updated_at":"2025-06-16T04:31:15.043Z","avatar_url":"https://github.com/practicalli.png","language":"Clojure","readme":"# banking-on-clojure-webapp\n\nA Clojure web application using `clojure.spec` libraries for defining data and function contracts to be used for generative testing.\n\nA [guide to the development of this project](http://practicalli.github.io/clojure-webapps/projects/banking-on-clojure/) is on the Practicalli ClojureWebApps website.\n\n[![CircleCI](https://circleci.com/gh/circleci/circleci-docs.svg?style=svg)](https://circleci.com/gh/practicalli/banking-on-clojure-webapp)\n\nCode Repository: [practicalli/banking-on-clojure-webapp](https://github.com/practicalli/banking-on-clojure-webapp)\n\n## Development\nOpen the code in a Clojure aware editor and start a REPL session.\n\nRun all the tests in the project using the Cognitect Labs test runner, setting the classpath to include `test` directory.  The aliases are included in the project `deps.edn` file.\n\n```shell\nclojure -A:test:runner\n```\n\n## Running the code\nUse the `-M -m` option to set the main namespace to inform Clojure where it can find the `-main` function to start the code running.\n\n```shell\nclojure -M -m practicalli.banking-on-clojure\n```\n\u003e Use the `-m` option by itself if using Clojure CLI tools version before 1.10.1.697\n\n## Packaging / Deployment\nClojure is deployed as a Java archive (jar) file, an archive created using zip compression.  To package the code to run in a JVM environment, an uberjar is created which included the project code and the Clojure standard library.  This is called an uberjar.\n\nUse the alias for depstar tool to build an uberjar for this project.  The alias is defined in the `deps.edn` file for this project.\n\n```shell\nclojure -A:uberjar\n```\n\nThe code can be run from the uberjar on the command line\n\n```shell\njava -jar banking-on-clojure-webapp.jar\n```\n\n\n## License\n\nCopyright © 2020 Practicalli\n\nDistributed under the Creative Commons Attribution Share-Alike 4.0 International\n","funding_links":["https://github.com/sponsors/practicalli-johnny"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpracticalli%2Fbanking-on-clojure-webapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpracticalli%2Fbanking-on-clojure-webapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpracticalli%2Fbanking-on-clojure-webapp/lists"}