My Experience with GitHub Copilot 
Agent: Developing a React Native 
Application

My Experience with GitHub Copilot Agent: Developing a React Native Application

Daniel Rogachev

Introduction

Recently, I had the opportunity to explore the new GitHub Copilot mode – Agent in my work. The occasion arose from an internal project that my colleague and I needed to implement before joining a larger mobile app development initiative with React Native. Since neither of us had prior experience with this technology, the task served as a preparatory phase.

The project's goal was relatively simple – create a mobile application where company employees could register and view a list of other employees, including information on their used paid leave days. The data was retrieved from Google Sheets, where each employee was required to enter their leave days, and a script recorded this information in Firebase Firestore.

Getting Started with React Native

Since React Native was a new technology for us, we first familiarized ourselves with its core concepts through documentation and video tutorials. During development, we decided to use Expo because of its built-in tools and its recommendation for beginners in the official React Native documentation.

To ensure maintainability and scalability, we followed Clean Code & Clean Architecture principles.

For navigation, we initially chose React Navigation, as it felt more intuitive given our prior experience with Flutter projects. In hindsight, this may not have been the best decision, but it worked for our needs.

Other technologies and tools we used:

  • Inversify for dependency injection (helping maintain Single Responsibility Principle and Separation of Concerns)
  • Firebase Authentication & Firestore for backend services

💡 The entire development process took about four weeks.


Getting Started with GitHub Copilot Agent

After completing the project, I was tasked with implementing the same application using GitHub Copilot Agent, minimizing manual code writing as much as possible.

What is GitHub Copilot Agent?

Copilot Agent is an advanced mode of GitHub Copilot that has access to the entire project context. It can:

✅ Independently create execution plans for tasks

✅ Select relevant files and apply code changes

✅ Fix errors and even suggest terminal commands

💡 Note: This mode is currently in preview and is available only in VS Code Insiders.

Setup and Initial Impressions

The setup process was incredibly simple:

  1. Installed VS Code Insiders
  2. Activated Copilot Agent
  3. Assigned it the first task: Create a React Native Expo project

It generated a standard project structure with the default Expo setup. When I asked it to clean up the default files, it correctly identified and executed a script to reset everything.

🚀 With just a few prompts, Copilot Agent:

  • Created a landing screen with registration & login buttons
  • Generated separate pages for authentication with field validation
  • Implemented external libraries like validator for email and password checks
  • Integrated Expo’s Image Picker for profile picture uploads

Two things that impressed me:

  • 💡Copilot Agent iterated over the code it had written by itself, identifying errors and fixing them—without me needing to intervene. This ability to self-correct significantly sped up the process.
  • 💡It handled UI layouts very well, even making intuitive design decisions like displaying the user’s initials inside the profile picture placeholder (like Google accounts) when no image was provided—without me needing to specify that!


Challenges and Limitations

Despite its strengths, Copilot Agent wasn’t flawless. Here are some key challenges we faced:

⚠️ Navigation Struggles:

  • We switched from React Navigation to Expo Router, and Copilot Agent struggled to configure proper redirections after authentication.
  • Likely, this was due to requiring context across multiple files, which it couldn’t fully comprehend.

⚠️ Rate Limits:

  • After extended use, I encountered rate-limit errors:
  • This was frustrating since it temporarily halted progress.
  • Hopefully, this issue will be addressed before the full release.

These were the only times I had to manually adjust the code—everything else was completed seamlessly.


Finalizing the Project

The last major feature involved integrating Google Sheets with Firebase.

🚀 Copilot Agent’s approach:

  • It provided detailed steps for setting up Firebase Firestore and Google Cloud.
  • However, it struggled with permissions & role management, initially attempting to assign them incorrectly.
  • After a few iterations (~10 prompts), it successfully created a Code.gs script for Google Sheets that: ✅ Automatically recorded leave days in Firestore ✅ Ignored weekends when calculating paid days off (without explicit instructions from me!)


Conclusion

🔹 The Results:

  • As beginners, our first manual React Native build took 4 weeks.
  • A skilled developer might have completed it in a week.
  • Copilot Agent did it in just 1.5 days, with me manually writing only two lines of code!

That said, we remain neutral about its overall impact.

Where Copilot Agent excels:

  • Laying foundations for new projects
  • Generating boilerplate code
  • Handling UI layouts & common patterns

⚠️ Where uncertainty remains:

  • Adding features to existing projects (small or large)
  • Handling complex interdependencies

💡 For now, it’s an exciting tool that improves productivity, but whether it becomes a core part of development workflows is still up for debate.


What’s Next?

Would you trust Copilot Agent for your development work? Let’s discuss in the comments!

#GitHubCopilot #ReactNative #AIinDevelopment #SoftwareEngineering #MobileDevelopment #DeveloperTools


To view or add a comment, sign in

More articles by Creotech

Others also viewed

Explore content categories