{"id":44737006,"url":"https://github.com/progress/jsdo","last_synced_at":"2026-02-15T20:06:03.777Z","repository":{"id":30973233,"uuid":"34531447","full_name":"progress/JSDO","owner":"progress","description":"Client side TypeScript library to access Progress® Data Object Services","archived":false,"fork":false,"pushed_at":"2020-07-16T20:12:35.000Z","size":4444,"stargazers_count":23,"open_issues_count":15,"forks_count":28,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-11-04T20:13:39.209Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/progress.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-24T17:12:48.000Z","updated_at":"2023-09-30T19:03:17.000Z","dependencies_parsed_at":"2022-09-08T11:03:40.812Z","dependency_job_id":null,"html_url":"https://github.com/progress/JSDO","commit_stats":null,"previous_names":["clouddataobject/jsdo"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/progress/JSDO","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/progress%2FJSDO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/progress%2FJSDO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/progress%2FJSDO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/progress%2FJSDO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/progress","download_url":"https://codeload.github.com/progress/JSDO/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/progress%2FJSDO/sbom","scorecard":{"id":30849,"data":{"date":"2025-08-04","repo":{"name":"github.com/progress/JSDO","commit":"e4461620ecfcc71b2e6e95dd89c22aa38e083bee"},"scorecard":{"version":"v5.2.1-28-gc1d103a9","commit":"c1d103a9bb9f635ec7260bf9aa0699466fa4be0e"},"score":5,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#maintained"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#cii-best-practices"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#vulnerabilities"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#security-policy"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#signed-releases"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#sast"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#fuzzing"}}]},"last_synced_at":"2025-08-14T19:04:43.269Z","repository_id":30973233,"created_at":"2025-08-14T19:04:43.270Z","updated_at":"2025-08-14T19:04:43.270Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29487814,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T19:29:10.908Z","status":"ssl_error","status_checked_at":"2026-02-15T19:29:10.419Z","response_time":118,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":"2026-02-15T20:06:02.943Z","updated_at":"2026-02-15T20:06:03.771Z","avatar_url":"https://github.com/progress.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JSDO\n\nThe JSDO is a client side typescript library for Progress Data Object Services published by Progress Software Corporation. Its purpose is to provide an easy to understand API for querying, creating, updating and deleting Progress Data Objects as well as invoke server side business logic. \nThe JSDO is a free and open-source full-featured implementation that can be used in web, mobile web and hybrid mobile apps.\n\n### Documentation\n\nProgress® Data Objects in an OpenEdge business application can be accessed using the JSDO on the client. For more information, see the \u003ca href=\"https://docs.progress.com/bundle/data-object-guide/page/Overview-of-Progress-Data-Objects-Services-and-Catalogs.html\"\u003eOverview of Progress Data Objects, Services and Catalogs.\u003c/a\u003e\n\n### Usage\n\nThis is an npm package. This means that node and npm need to be installed to use it.\n\nTo use the JSDO, you normally will simply install it from the public NPM registry via an `npm install`. You'll need to select a JSDO package depending on your environment:\n\n```\n# For vanilla JS, e.g. running it in a browser:\nnpm install @progress/jsdo-core\n\n# For usage with node:\nnpm install @progress/jsdo-node\n\n# For usage with Angular:\nnpm install @progress/jsdo-angular\n\n# For usage with Nativescript:\nnpm install @progress/jsdo-nativescript\n```\n\nIf you want to add changes and build packages yourself from this repository, you will need to use the scripts in `package.json`. The package.json in the root folder corresponds to the `@progress/jsdo-core` package.\n\nHere is a quick overview of the npm scripts:\n\n`npm install`\n\n\u003e This installs the necessary dependencies that the JSDO has and needs to be run at least once. \n\n`npm run build:jsdo`\n\n\u003e This creates a `build` folder and produces in it a `progress.jsdo.js` file that can be used either via including it in a `\u003cscript\u003e` tag or via a `progress = require('/path/to/build/progress.jsdo.js').progress;` in your Node app.\n\n`npm run test`\n\n\u003e This runs the `build:jsdo` script and then runs the Mocha tests found in the `test` folder. This can also be run manually by installing Mocha on your environment and then running `mocha --recursive` in the JSDO folder. \n\n`npm run lint`\n\n\u003e This runs `eslint` on the JSDO source files.\n\n\n### JSDO and OpenEdge compatibility\n\n| JSDO version | OpenEdge version |\n| ------------ | ---------------- |\n| 6.0.1        | 11.7.x, 12.0.x   |\n\n### Download\u003ca name=\"download\"\u003e\u003c/a\u003e\n\nYou can \u003ca href=\"https://github.com/progress/JSDO/zipball/master\"\u003edownload a copy of the full JSDO \u003c/a\u003e to a zip file.\n\n| Source File                                                                                                 | Purpose                                        |\n| ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------- |\n| [progress.js](https://github.com/progress/JSDO/blob/master/src/progress.js)                                 | JSDO core                                      |\n| [progress.session.js](https://github.com/progress/JSDO/blob/master/src/progress.session.js)                 | JSDO session management                        |\n| [progress.util.js](https://github.com/progress/JSDO/blob/master/src/progress.util.js)                       | Helper classes for the JSDO                    |\n| [progress.data.kendo.js](https://github.com/progress/JSDO/blob/master/src/progress.data.kendo.js)           | Kendo UI DataSource for the JSDO               |\n| [auth/progress.auth.js](https://github.com/progress/JSDO/blob/master/src/auth/progress.auth.js)             | JSDO authentication provider                   |\n| [auth/progress.auth.basic.js](https://github.com/progress/JSDO/blob/master/src/auth/progress.auth.basic.js) | JSDO authentication provider (BASIC auth)      |\n| [auth/progress.auth.form.js](https://github.com/progress/JSDO/blob/master/src/auth/progress.auth.form.js)   | JSDO authentication provider (FORM-based auth) |\n| [auth/progress.auth.sso.js](https://github.com/progress/JSDO/blob/master/src/auth/progress.auth.sso.js)     | JSDO authentication provider (SSO auth)        |\n\n| Lib File                                                                                      | Purpose                                                                        |\n| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |\n| [progress.all.js](https://github.com/progress/JSDO/blob/master/lib/progress.all.js)           | The JSDO plus the Kendo UI DataSource for JSDO                                 |\n| [progress.all.min.js](https://github.com/progress/JSDO/blob/master/lib/progress.all.min.js)   | The JSDO plus the Kendo UI DataSource for JSDO minified for deployment         |\n| [progress.jsdo.js](https://github.com/progress/JSDO/blob/master/lib/progress.jsdo.js)         | The JSDO core components (JSDO, Session, Util classes)                         |\n| [progress.jsdo.min.js](https://github.com/progress/JSDO/blob/master/lib/progress.jsdo.min.js) | The JSDO core components (JSDO, Session, Util classes) minified for deployment |\n\nThe JSDO can be used by hybrid mobile apps, mobile web apps and web browser apps to access OpenEdge and Rollbase servers. Other implementations include a client in a mobile Hybrid App (a variation of the browser client), a Telerik® NativeScript client, a Node.js server, and a Java server. The JSDO has successfully been used with servers other than OpenEdge such as Node.js to export data created / aggregated in Modulus™ to a Progress® Rollbase Application.\n\n### License\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprogress%2Fjsdo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprogress%2Fjsdo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprogress%2Fjsdo/lists"}