The client wanted to completely redesign his existing website to make it modern, snappy, and easier to use. He had a strong vision of what a weather website should look like in 2020 and most of the designs ready beforehand so we jumped straight into development pretty quickly.
React was chosen for unmatched development speed, MongoDB for its CRUD performance, and NodeJS for handling high not CPU-intensive load on the…
backend. The architecture was pretty simple as something more complex would definitely be an overkill for this kind of project.
Achieving high search ranking was very important for this project, so server-side rendering, CDN, performance optimizations, multi-language support, sitemaps, and SEO audits were a must. Supporting older browsers like IE11 was also critical for a consumer website like this.
To get everything working we had to combine our own cities and places database with multilanguage support, mix together data from different sources to get everything we needed, and even poll individual weather stations on a lower level directly. In fact, it might be the most detailed consumer weather website out there.
Our calculations concluded that a single web server could easily handle all the traffic from the old website so it was deployed on a single EC2 instance. We hope it would get a lot more traffic in the future so deployment architecture also included a plan to easily scale to multiple rendering and backend instances when needed.
The website achieved 90+ PageSpeed score on desktop and 60+ on Mobile which completely smoked its current competition. It feels really fast, modern, and looks great on every platform. Weather predictions are pretty accurate and the traffic grows. The client is happy and our success is being measured by the success of our clients.