Trying to use client-side pdf library pdfmake in my Angular 2 (version=4.2.x) project. In .angular-cli.json file, I declared js like this: "scripts": [ "../node_modules/pdfmake/build/pdfmake.js", "../node_modules/pdfmake/build/vfs_fonts.js" ] And then in app.component.ts, I used it like this: import * as pdfMake from 'pdfmake'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'] }) export class AppComponent implements OnInit { pdf: any; downloadPdf() { let item = {firstName: 'Peter', lastName: 'Parker'}; this.pdf = pdfMake; this.pdf.createPdf(buildPdf(item)).open(); } } function buildPdf(value) { var pdfContent = value; var docDefinition = { content: [{ text: 'My name is: ' + pdfContent.firstName + ' ' + pdfContent.lastName + '.' }] } console.log(pdfContent); return docDefinition; } I hit below error in browser console when loading the app: Uncaught TypeError: fs.readFileSync is not a function at Object.<anonymous> (linebreaker.js:15) at Object.<anonymous> (linebreaker.js:161) at Object.../../../../linebreak/src/linebreaker.js (linebreaker.js:161) at __webpack_require__ (bootstrap b937441…:54) at Object.../../../../pdfmake/src/textTools.js (textTools.js:4) at __webpack_require__ (bootstrap b937441…:54) at Object.../../../../pdfmake/src/docMeasure.js (docMeasure.js:4) at __webpack_require__ (bootstrap b937441…:54) at Object.../../../../pdfmake/src/layoutBuilder.js (layoutBuilder.js:7) at __webpack_require__ (bootstrap b937441…:54) My workaround for solving this problem is: Copy pdfmake.js and vfs_fonts.js to assets folder, and then add this to index.html: <script src='assets/pdfmake.min.js'></script> <script src='assets/vfs_fonts.js'></script> Remove this from app.component.ts import * as pdfMake from 'pdfmake'; And add this to app.component.ts: declare var pdfMake: any; Finally remove this from .angular-cli.js: "../node_modules/pdfmake/build/pdfmake.js", "../node_modules/pdfmake/build/vfs_fonts.js" It works but it's still a workaround. Anyone knows how to use this library in Angular/Typscript way? Thanks a lot! Continue reading...