How to deploy Express server with React frontend to the App Platform?

I have a Express server (server.js) and a React app as the client in one project. the directory structure is like:


the primary packge.json has these commands:

"dev": "secrethub -- run nodemon server.js",
  "start": "secrethub -- run node server.js",
  "deploy": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client",

ive adjusted my custom build script inside the “Component” tab in the digital ocean control panel multiple times. ive tried just “npm run deploy” which worked, for the front end only. the api doesnt run.

if i run npm run deploy && npm run start then it just lags on the build phase and never finishes…

how do i deploy this to run the server as well as build the frontend?

Submit an answer

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Want to learn more? Join the DigitalOcean Community!

Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in Q&A, subscribe to topics of interest, and get courses and tools that will help you grow as a developer and scale your project or business.

I am stumbling a bit blindly through this (i.e. I just try a bunch of things until something works, but I don’t necessarily understand why or why not), but this seems to be working for me: On Settings Page: Set Build command to npm run deploy Set Run command to node server.js

Where deploy is a similar script to npm install and npm build