# tsconfig api > ⚠️ This project is currently experimental. It is incomplete and can introduce breaking changes at any time. Do not use in production until v1 😁 This API takes the TypeScript CLI options and makes them available via a microservice API. The data is initially created by running the `createData.ts` script on a stripped version of the [compiler options](https://www.typescriptlang.org/docs/handbook/compiler-options.html) handbook file (find the markdown version [here](https://github.com/microsoft/TypeScript-Handbook/blob/master/pages/Compiler%20Options.md)). The API is a microservice built on Node.js. It uses [now](https://zeit.co/now) for build and deployment. Use this API by making a GET request to `https://tsconfig-api.matterhorndev.now.sh/tsconfig?option=` Don't forget to pass a valid compiler option to the `option` query parameter! ## Available compiler options List generated by running `Object.keys(require('./src/tsconfig-data.json'))`
Click to reveal list

```js [ 'allowJs', 'allowSyntheticDefaultImports', 'allowUmdGlobalAccess', 'allowUnreachableCode', 'allowUnusedLabels', 'alwaysStrict', 'baseUrl', 'build', 'charset', 'checkJs', 'composite', 'declaration', 'declarationDir', 'declarationMap', 'diagnostics', 'disableSizeLimit', 'downlevelIteration', 'emitBOM', 'emitDeclarationOnly', 'emitDecoratorMetadata', 'esModuleInterop', 'experimentalDecorators', 'extendedDiagnostics', 'forceConsistentCasingInFileNames', 'help', 'importHelpers', 'incremental', 'inlineSourceMap', 'inlineSources', 'init', 'isolatedModules', 'jsx', 'jsxFactory', 'keyofStringsOnly', 'lib', 'listEmittedFiles', 'listFiles', 'locale', 'mapRoot', 'maxNodeModuleJsDepth', 'module', 'moduleResolution', 'newLine', 'noEmit', 'noEmitHelpers', 'noEmitOnError', 'noErrorTruncation', 'noFallthroughCasesInSwitch', 'noImplicitAny', 'noImplicitReturns', 'noImplicitThis', 'noImplicitUseStrict', 'noLib', 'noResolve', 'noStrictGenericChecks', 'noUnusedLocals', 'noUnusedParameters', 'out', 'outDir', 'outFile', 'paths', 'preserveConstEnums', 'preserveSymlinks', 'preserveWatchOutput', 'pretty', 'project', 'reactNamespace', 'removeComments', 'resolveJsonModule', 'rootDir', 'rootDirs', 'showConfig', 'skipDefaultLibCheck', 'skipLibCheck', 'sourceMap', 'sourceRoot', 'strict', 'strictBindCallApply', 'strictFunctionTypes', 'strictPropertyInitialization', 'strictNullChecks', 'suppressExcessPropertyErrors', 'suppressImplicitAnyIndexErrors', 'target', 'traceResolution', 'tsBuildInfoFile', 'types', 'typeRoots', 'version', 'watch' ] ```

## Purpose This project was created in preparation for future tools that will utilize the TypeScript compiler options. Currently planned are a web app and a command line interface for learning about and creating tsconfig files / tsc compile commands. ## Contributing Open an issue if you'd like to report a bug or request a feature. Pull requests are welcome to, but please make sure to indicate what issue you are solving beforehand. By contributing to this project you agree to our [Code of Conduct](https://github.com/MatterhornDev/code-of-conduct)