Introduction
The order gift project encourages customers to buy products on JD.COM on some promotion season. A mobile web page is developed to show the status of the customers who participate in the order gift activity. Different status corresponds to different UIs and interactions. If they meet certain conditions, they can get some gifts from the website.

Technical Stack
In this project, I use React and TypeScript to build a SPA.
Why should we use TypeScript?
easier to read and understand
TypeScript is a superset of JavaScript. JavaScript is dynamically typed but TypeScript adds type support to JavaScript which improves code readability and maintenance.faster to implement
TypeScript encourages developers to develop exposing interfaces. If you’re working with other developers, you can expose your APIs with typed interfaces, let other developers know how to use it easily.less bug
When you use TypeScript, it looks like somebody sitting next to you. He would immediately yell at you whenever you were doing a typo, using a null value, or passing a parameter in error type. You don’t need to run the code and you can find the error. It can really save my time on finding and fixing the bug.