- React for the front end (https://reactjs.org)
- Node.js for your back end (https://nodejs.org)
- Deploy using Adapt, which ties your front and back end together using React-like components. (https://adaptjs.org).
- (Optional) If this project is larger or commercial, definitely use TypeScript on all 3 of the above (http://www.typescriptlang.org/)
[Disclosure: I'm a maintainer of Adapt, but a strong believer in the React model and ecosystem]