{"id":29096396,"url":"https://github.com/typestrong/tspms","last_synced_at":"2025-10-27T12:07:27.433Z","repository":{"id":22243146,"uuid":"25576548","full_name":"TypeStrong/tspms","owner":"TypeStrong","description":"An abstraction on top TypeScript language service, that let you consume it in the context of a project.","archived":false,"fork":false,"pushed_at":"2015-02-11T18:27:21.000Z","size":581,"stargazers_count":15,"open_issues_count":4,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-06-28T12:47:35.452Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TypeStrong.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}},"created_at":"2014-10-22T10:53:36.000Z","updated_at":"2024-03-01T15:54:43.000Z","dependencies_parsed_at":"2022-08-20T12:10:40.703Z","dependency_job_id":null,"html_url":"https://github.com/TypeStrong/tspms","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TypeStrong/tspms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeStrong%2Ftspms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeStrong%2Ftspms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeStrong%2Ftspms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeStrong%2Ftspms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TypeStrong","download_url":"https://codeload.github.com/TypeStrong/tspms/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeStrong%2Ftspms/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281264984,"owners_count":26471353,"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","status":"online","status_checked_at":"2025-10-27T02:00:05.855Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2025-06-28T12:40:01.507Z","updated_at":"2025-10-27T12:07:27.428Z","avatar_url":"https://github.com/TypeStrong.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TypeScript ProjectManager Service \n\n\u003e An abstraction on top [TypeScript](http://www.typescriptlang.org/) language service, that let you consume it in the context of a project.\n\n## Installation\n\nTo use this module install it through npm: \n```\nnpm install tspms\n```\n\n## Purpose \n\nThis module provides a simple abstraction on top of the [TypeScript language service](https://github.com/Microsoft/TypeScript/wiki/Using-the-Language-Service-API)\nthat will allow the user to manage multiple projects and access to the language service features in the context of those projects.\n\n## Requirement\n\nWhile this module can only be consumed through a [commonjs module system](http://wiki.commonjs.org/wiki/Modules/1.1) like [Node.js](http://nodejs.org/), \nit has been developed to be able to run in any evironment.  \nTo use this module in the browser or in a [Web Worker](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API), \nuse a commonjs module bundler like [browserify](http://browserify.org/) or [webpack](http://webpack.github.io/).  \nThis module expects an implementation for some Node.js core modules like `path`, `crypto` etc...  \nIt has been tested against the [browserify version](https://github.com/substack/node-browserify#compatibility) of those modules.\n\n## Usage\n\nThis module consumes interfaces that abstract the file system and the editor. You need to provide an implemention of those interfaces to bootstrap the module.  \nOnce initialized it manages typescript projects and let you accesss to an async layer on top of the languageService api that will be executed in the context of those projects.\n\nYou can find more informations in the [Usage section](./doc/Usage.md) of the Documentation.  \nAlternatively you can directly look at the [API Documentation](./doc/API.md)\n\n## TypeScript Compatibility\n\nThis module allows to provide a custom compiler, the language service api however must be compatible with the one from TypeScript version 1.4.\n\n## Definition file\n\nYou can find a definition [`index.d.ts`](./index.d.ts) file in this repository, it assumes that the [typescript definition file](https://github.com/Microsoft/TypeScript/blob/v1.4/bin/typescript.d.ts) is in the compilation context.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypestrong%2Ftspms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftypestrong%2Ftspms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypestrong%2Ftspms/lists"}