Week 09: GSoC’23 with OpenMRS

Topherlumu
2 min readJul 31, 2023

--

Hello everyone! Welcome to the ninth-week,
In this past week, I made significant strides in two key areas: testing the Visit Notes Form and honing my skills in React Hook development. Let’s dive into the details of these exciting developments!

Testing Visit Notes Form

Testing is a crucial aspect of any software development project, and it’s no different for openmrs . During this week, I dedicated my efforts to thoroughly testing the Visit Notes Form to ensure its functionality, reliability, and data integrity.

These tests allowed me to simulate user interactions and verify that the form behaves as expected in different scenarios.

By implementing a robust testing suite, we can detect potential issues early in the development process, reducing the risk of bugs and ensuring a smoother user experience. I’m confident that these tests will contribute to the overall stability and quality of our 3.x application.

Improving React Hook Skills

Throughout GSoC, my focus has been on embracing modern React development practices, particularly leveraging React Hooks to manage state and logic within components. During this week, I took the opportunity to deepen my understanding of React Hooks and explore advanced patterns to optimize our codebase further.

I delved into topics such as custom hooks, useCallback, useMemo, and the Context API. Understanding these advanced concepts will enable me to write more efficient and maintainable code, leading to improved performance and better user experiences. Additionally, I gained insights into managing component re-renders and preventing unnecessary updates, which are essential skills for building high-performance React applications.

Challenges and Learnings

Throughout this week, I encountered a few challenges while rewriting tests for the Visit Notes Form. Some of the components had complex interactions and state changes, making it necessary to thoroughly plan and re design the test cases. However, with persistence and a test-driven development approach, I successfully overcame these hurdles and completed a comprehensive testing suite.

In my quest to enhance my React Hook skills, I also faced some conceptual challenges, particularly when dealing with memoization and useCallback. However, with the aid of online tutorials, documentation, and community support, I was able to get a better hand grasp at these concepts

Looking Ahead

As GSoC reaches its final stages, I’m excited about the progress we’ve made so far. In the upcoming week, I plan to continue refining the Forms, based on the insights gained from testing, and to further optimize our React components

Thank you for following my journey throughout GSoC! I’m thrilled to see how far our project has come.

As always, feel free to share your thoughts and feedback in the comments below.
Stay tuned for more updates in the coming weeks! Happy coding!

--

--