Jose Castro

Weather App

Front and backend integration

Weather Landing Image

Objective

My goal with this project was to learn how to set up a local server and deepen my understanding of JavaScript fundamentals such as DOM manipulation and handling API responses.

Set up

For the backend I use NodeJs and ExpressJs to simplify the HTTP calls and protect the local server. I deploy the project in Render because it allows to deploy both the front and the back end onthe same project making it easier to maintain.

Diagram explaining project's data flow

Challenges

The weather API I used only works with coordinates, so I created a custom API endpoint that converts a user’s inputted location into latitude and longitude (using a geocoding API). I then set up another endpoint to fetch the weather information for those coordinates and dynamically update the DOM with the results.

The interaction between the user interface, my server, and external APIs made the project feel like a true full-stack application, giving me experience with both frontend and backend development.

Kings Heath Clangers logo

Learnings

Frontend and Backend Communication

I gained hands-on experience with what happens behind the scenes when the frontend makes HTTP requests to the backend. I also learned how the backend can serve as a middle layer by calling external APIs and sending cleaned-up JSON responses back to the frontend.

DOM manipulation with API data

By parsing JSON and dynamically updating the UI with vanilla JavaScript, I strengthened my confidence in working with asynchronous code and event-driven updates—skills that allow me to build interactive and responsive user experiences.

Full-Stack Perspective

My biggest takeaway was understanding the complete flow: from capturing user input on the frontend, to the server’s role in the backend, to using Express as middleware for API calls, and finally updating the frontend through DOM manipulation. This gave me a clear picture of how all the pieces of a full-stack application work together.

Outcome

Kings Heath Clangers logo
Kings Heath Clangers logo

This project helped me strengthen my full-stack skills while building something tangible that solves a real problem: making weather data accessible to users through a clean, dynamic interface. It improved my ability to structure applications with clear separation of concerns and gave me practical experience in integrating third-party APIs.

;
Jose's initials J and C
LinkedIn
Let’s connect

Call me

📞 (+34) 634 150 481

Message me

📩 joselqcastro@gmail.com

2025 © Jose Castro