How can I utilize the --build flag in conjunction with ts-node?

In my current project setup, I have a library with a sub-project that launches a server using the same code from the parent library for rapid development. The structure of the project is as follows:

--Library root
|-src/
|-example/
 |-server/
  |-src/
  |-tsconfig.json
  |-package.json
|-tsconfig.json
|-package.json

The main concept is to run the server in the examples directory, leveraging the code from the parent library. This means that any changes made to the library code will trigger a restart of the server to reflect those updates. To achieve this, TypeScript project references are utilized: https://www.typescriptlang.org/docs/handbook/project-references.html

Inside the server's example/server/package.json, I have added the following script:

"scripts": {
    "serve": "nodemon ./src/server.ts",
  },

The file example/server/nodemon.json monitors changes in the ts files from the parent project directory and executes ts-node accordingly:

{
    "watch": "../../**/*.ts",
    "execMap": {
      "ts": "ts-node"
    }
  }

As a result, the command ts-node ./src/server.ts is executed. While this method works fine, it does not rebuild the parent library upon changes. After investigation, I found out that passing --build to tsc triggers the building of dependencies. However, I am unsure of how to incorporate this option into ts-node, or if it is even feasible.

Answer №1

One potential fix could involve updating the package.json file within the server folder to include the following:

"scripts": {
  "prestart": "tsc --build",
  "start": "nodemon ./src/server.ts"
}

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

What is the best way to interrupt the current song playing?

I am currently working on developing an audio player using reactjs that has a design similar to this https://i.sstatic.net/Hnw0C.png. The song boxes are rendered within a map function, and when any song box is clicked, it should start playing. However, I a ...

Transforming the api response object into a map containing nested maps with string values

Is there a way to optimize the code below without using loops? Although I prefer not to use loops in my code, the current implementation relies on them. I'm curious if achieving the same result is possible with a different approach. Code: ts private ...

Leverage the power of react-redux useSelector with the precision of TypeScript

When attempting to utilize the new useSelector hook (shown in the example below) from react-redux in TypeScript, an error is encountered indicating that the function does not exist: Module '"../../../node_modules/@types/react-redux"' has no expo ...

A guide to sorting through in-app notifications in REACT-NATIVE based on their read status

Incorporating two headings, "Unread" and "Read", into the notification system is my goal. When opened, the Unread Notifications should be displayed beneath the Read notifications. This data is being retrieved from an API. Each notification contains a key ...

showcasing products from database with the help of Angular 12

Here are the files related to the item: Item file And here is the component file: Component file Lastly, this is the data service file: Data Service file However, issues arise when testing the code with console log statements as it indicates that the ...

What is the most efficient way to execute useEffect when only one specific dependency changes among multiple dependencies?

My main objective is to update a state array only when a specific state (loadingStatus) undergoes a change. Yet, if I include solely loadingStatus as a dependency, React throws an error requesting all dependencies [loadingStatus, message, messageArray, set ...

The defineProps<SomePropType>() method is not rendering the props as expected

I have various components, with a parent element where I attempted to pass props using the syntax defineProps<{}>(). The setup is simple, I have a types.ts file at the root level, a parent Vue file (referred to as CardItem), and multiple components. ...

Understanding React and TypeScript Higher Order Components: How to Resolve the Type '{}' is not assignable to Type P Error

While following along with the Learning React with TypeScript book, I encountered a problem where I hit a wall while coding. Despite surrendering and copying code directly from the book, the compiler is still unhappy As a temporary solution, I have resort ...

Using Angular to Make a Request for a Twitter API Access Token

I'm facing some challenges while trying to implement a Twitter Sign-In method for my angular app. The issue seems to be with the initial step itself. I am attempting to make a post request to the request_token API by following the steps outlined at th ...

A guide on showcasing array elements on a HTML page using Ionic 3 framework

I'm currently learning how to work with Ionic. One challenge I encountered is displaying products added to the cart on the cart page. While I was able to retrieve values using the forEach method, I faced difficulty in displaying them on the page. car ...

Unable to successfully generate work item through VSO SDK

A team is attempting to develop a custom widget on VSTS to facilitate group code reviews. One of the tasks is to create a new work item with the type "Code Review Response" and link it to code changes. However, the current code is not functioning as expect ...

Is it possible to create a map of functions that preserves parameter types? How can variadic tuple types in TypeScript v4 potentially enhance this

Initially, I faced a challenge when trying to implement a function similar to mapDispatchToProps in Redux. I struggled with handling an array of functions (action creators) as arguments, but managed to come up with a workaround that works, although it feel ...

Using Angular's dependency injection in a project that has been transpiled with Babel

I am currently attempting to transpile my Angular 6 project, which is written in TypeScript, using the new Babel 7. However, I am facing challenges with getting dependency injection to function properly. Every time I try to launch the project in Chrome, I ...

Issue with React/Typescript: using "any" for typehinting is ineffective

My React component is called github.tsx. Here is the code within it: import React from 'react' import axios from 'axios' class Github extends React.Component<{any, any}>{ state = { user: [] } getRepoUser = async () ...

How to fix the "Module parse failed" issue when importing MP3 files in NextJS 14 TypeScript?

Starting a new NextJS project, I used the command npx create-next-app@latest. Within this project, I created a simple TSX component that takes an imported MP3 file as a prop. 'use client'; import Image from "next/image"; import audioI ...

Issue encountered with combineLatest following upgrade of rxjs from version 6.x to 7.x

Upon upgrading rxjs from version 6.6.6 to 7.4.0, an error surfaced in my combineLatest function. searchQuery = new FormControl(null); searchStatus = new FormControl<UserStatus>('ALL'); searchParams$ = combineLatest( this.searchQuery.valu ...

What are the steps to display a fallback route with TypeScript in Angular 6?

I am currently working with the AppRouting module and have the following code: ... const routes: Routes = [ ... { path: 'events', data: { preload: true }, loadChildren: './events/events.module#EventsModule' }, ... ...

Oops! Issue encountered while trying to read the file "src/core/database/config.ts"

Need help with migrating a database in a Node Nest.JS application. When running the npx sequelize-cli db:migrate shell command, I encountered the following exception: Error details: Error: TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".t ...

Using ESLint to enforce snake_case naming conventions within TypeScript Type properties

When working with TypeScript, I prefer to use snake_case for properties within my Interfaces or Types. To enforce this rule, I have configured the ESLint rule camelcase as follows: 'camelcase': ["error", {properties: "never"}], Even though the E ...

Trustpilot Authentication Error: Grant_type Not Recognized

I am attempting to utilize the Trustpilot API for sending email review invitations. Before making the call, I need to obtain an access token as per Trustpilot's documentation. However, when implementing the function below, I am encountering an error i ...