DEV Community

Cover image for ๐Ÿš€ Transform Journey: 90% AI-Generated Code ๐Ÿค– | Built in Just 4 Hours with Codespaces + Copilot! ๐ŸŽ‰
Bupal Chowdary
Bupal Chowdary

Posted on

๐Ÿš€ Transform Journey: 90% AI-Generated Code ๐Ÿค– | Built in Just 4 Hours with Codespaces + Copilot! ๐ŸŽ‰

This is a submission for the GitHub Copilot Challenge : Transitions and Transformations

What I Built

๐ŸŒŸ Are you someone like me, with a wall full of sticky notes to track your goals, progress, and roadmaps? Imagine replacing that clutter with something smarter, more organized, and incredibly effective! ๐ŸŽฏ

For this challenge, I created a powerful AI-based Calendar and Cheat Sheet Generator thatโ€™s built to transform how you approach your goals. ๐Ÿ’ก Using the Google Gemini API, this tool generates beautifully crafted, personalized 30-day calendars and action plan cheat sheets that you can download and keep at your deskโ€”a constant reminder of your plans, progress, and the steps ahead. Whether youโ€™re on a mission to boost your career, learn a new skill, or grow personally, this app has everything you need to stay on track and take charge of your journey.

โœจ Why this app is a game-changer

  • Goal Alignment: Easily define your aspirations, whether theyโ€™re career-oriented, skill-based, or focused on personal development.
  • Progress Tracking: Keep a clear view of your milestones and achievements to stay motivated and accountable.
  • Transformation Ready: Designed for life-changing transitions, this app helps you move from where you are now to where you want to be.

I built this app with GitHub Codespaces as my coding environment and leveraged GitHub Copilot to co-create the magicโ€”90% of the code is AI-generated. ๐Ÿš€ In under 4 hours, I turned an idea into a working product designed to inspire and empower people to embrace transformations in their lives.

With this website, you can ditch the sticky notes and start building the future you envision. Whether itโ€™s acing your career goals, mastering a new skill, or making strides in personal growth, this tool helps you turn aspirations into actionable, trackable plans.

๐Ÿ‘‰ Ready to take control of your journey? Try it out and start transforming your life today! ๐ŸŒˆ

Demo

Tranform Journey-- Deployed demo

Home page

Generated Content

Calender

Repo

Github

Copilot Experience

How I Used Copilot Throughout the Development Process

Copilot has been an incredible asset during the entirety of this project. As a student, I was fortunate to have access to Copilot without any limits, and it truly transformed me into a 10x developer. Here's how I effectively leveraged Copilot to bring my project to life:


How I Used Copilot Effectively

1. Starting the Project with Inline Chat

As soon as I began the project, I used Copilot Inline Chat (activated with Ctrl+I) to:

  • Generate a simple structure for the app.
  • Request styling suggestions to make the app visually appealing.

This helped me lay a solid foundation right from the start.

2. Planning with Copilot Chat

Next, I turned to the inbuilt Copilot Chat to:

  • Create a concrete plan from the rough idea I had in mind.
  • Refine my thoughts and ensure the project aligned with my vision.

3. Copilot Edits: The Game-Changer

The Copilot Edits feature became the most useful tool for me. I simply described the changes I needed, and Copilot would:

  • Edit the relevant files seamlessly.
  • Save me time by handling repetitive tasks and streamlining my workflow.

All I had to do was debug errors, as Copilot sometimes struggles with tasks like analyzing imagesโ€”a limitation I noticed during the project.

4. Debugging Made Easy

Even when debugging, Copilot was immensely helpful:

  • Autocomplete predictions helped me anticipate types and errors before they occurred.
  • Hovering over an error allowed me to use Copilot Chat to:
    • Resolve the issue.
    • Understand the error for smoother debugging.

5. Choosing the Right Model

Copilot provides four models to choose from. For coding, I preferred Claude Sonnet 3.5, which excels in programming tasks. To access it, I enabled the preview modeโ€”a small tweak that made a big difference.


Some Prompts I Used

Inline Chats

  • "Create a simple application that accepts a user-provided prompt as input and interacts with the Google Gemini API using an API key to generate a response. The application should display the response on a user interface resembling a text editor, similar to Word or Notion, where the user can view, edit, and customize the generated content."
  • "Add a printable calendar to this component that the user can download."

Copilot Chat

  • "I am participating in a contest with the track 'Transitions and Transformations,' where I need to use VS Code with Copilot to create a creative or artistic tool that visualizes transitions and transformations. The track encourages themes like metamorphosis, evolution, emotional journeys, and the beauty of change. My idea is to build an app that allows users to input their goals and generates a personalized calendar and cheat sheet to serve as a roadmap for achieving those goals. Does this idea align well with the contest's theme? Additionally, what features or enhancements can I include to make the app more valuable and engaging for users?"
  • "Suggest a name for this website."
  • "Provide relevant meta tags for this project."
  • "Why is this error occurring?"
  • "How do I allow users to download the calendar and the journey part?"

Copilot Edits

  • "Implement a feature in this file that enables users to download both the calendar and the journey roadmap as downloadable files in a user-friendly format."
  • "Refine the system prompts to ensure the AI consistently generates well-structured and properly formatted outputs in the required format."
  • "The current output lacks proper formatting. Please adjust the system prompts to ensure the AI generates responses that are correctly formatted and precisely phrased as per the requirements."
  • "It seems some elements are missing type definitions. Could you review and add appropriate type annotations to ensure code consistency and clarity?"
  • "Review the provided files and craft a well-structured, visually appealing Markdown README file for the project, highlighting its purpose, features, setup instructions, and usage."

What Made Copilot Stand Out

  • Speed: Enabled rapid development, helping me build the project in under 4 hours.
  • Efficiency: Handled 90% of the code generation, leaving me with more time to focus on debugging and refining the user experience.
  • Ease of Use: Features like inline chat, code edits, and autocomplete significantly simplified the coding process.

Copilot turned my rough ideas into reality with astonishing speed and precision. It wasnโ€™t just a toolโ€”it was like having an expert coding companion by my side throughout the journey. ๐Ÿš€

GitHub Models

GitHub offers many powerful models for prototyping LLM capabilities, and I am excited to explore them in future projects. However, for this particular project, I opted to use the Google Gemini API due to its better rate limits.

Conclusion

๐ŸŽจ This project has been an incredible journey of creativity, learning, and innovation. Leveraging tools like Codespaces and Copilot allowed me to bring my idea to life, transforming it into a fully functional project in a remarkably short time. It was the perfect weekend escape from larger projects, providing a refreshing break while creating something impactful.

๐Ÿ“… By combining AI-driven capabilities with an intuitive user experience, this app demonstrates the power of technology to inspire personal growth and transformation. The inclusion of personalized calendars that users can physically print and keep offers a distraction-free way to stay focused on their goalsโ€”a simple yet powerful step toward meaningful progress.

๐Ÿ’ก Reflecting on this experience, Iโ€™ve gained invaluable insights into the power of AI tools in development, the importance of planning, and how even small innovations can create significant positive changes. This project exemplifies the idea of building applications that go beyond solving problemsโ€”they inspire people to dream and achieve.

๐Ÿš€ The potential impact of this app lies in its ability to guide users through their transitions and transformations, whether in career advancement, personal development, or learning new skills. Iโ€™m excited to explore future possibilities for this concept, pushing its boundaries to make it even more versatile and impactful.

Tips to Improve Developer Experience Using Copilot (From What I Learned)

๐Ÿš€ Harness the Power of Your Prompts

AI is only as powerful as the prompts you give it. I highly recommend refining your prompts using an LLM or even getting your thoughts converted into clearer prompts. If you understand the expected output and feel it aligns with your goal, then use it! The clearer your prompt, the more accurate and relevant the AIโ€™s response will be.

๐Ÿ—‚ Plan Your Component Structure in Advance

One of the mistakes I made early on was diving into development without a clear structure. Having all inline chats in the same folder made the code messy, hard to manage, and increasingly complex. Lesson learned: Always plan the structure of your components before you start building. This ensures scalability and ease of maintenance as your app grows.

๐Ÿ“‚ Provide Multiple Related Files for Context

When using Copilot, offering more related files as context will lead to better suggestions. AI needs context to generate meaningful and accurate code, so don't be afraid to share files that help it "understand" the full scope of your project.

๐Ÿ’พ Save Before Accepting Edits

When Copilot makes suggestions, donโ€™t immediately accept them. First, save your work. Then, review the edit to ensure it aligns with your goals. If youโ€™re satisfied, accept it. Otherwise, you can always use Undo to revert any changes that donโ€™t work for you. This ensures you have control over the changes made.

โšก Avoid Large Files for Minor Edits

For small changes, avoid giving Copilot large files to edit, as it consumes unnecessary resources and time. Use inline chats or manual changes for minor edits to make the process faster and more efficient.

By following these tips, you can maximize Copilot's potential, streamline your development process, and keep your projects organized and efficient!

Top comments (0)