This is a submission for the GitHub Copilot Challenge : New Beginnings
What I Built
I built a Development Goals Tracker — a Flask-based web application designed to help users set, track, and manage their development goals. The app includes features such as:
• Add new development goals with descriptions and target dates
• View all goals in an easy-to-navigate interface
• Mark goals as completed
• Delete goals
• Input validation for dates and descriptions
• Error handling and logging
• Testing suite using pytest
Demo
https://jayyu.pythonanywhere.com/
Repo
https://github.com/Jayapriya-S/DEV_Challenge
Copilot Experience
My Journey Building the Goal Tracker with GitHub Copilot:
When I began, I had a simple idea: I wanted to build an app to track my development goals. Initially, my requirements were straightforward:
• Add new goals
• Set target dates
• Mark goals as complete
• Delete completed goals
• Build it from scratch
That’s when GitHub Copilot worked its magic. It suggested a project structure, helping me organize the files and directories, as seen below:
DEV_Challenge/
├── app.py # Application factory and configuration
├── config.py # Environment configurations
├── requirements.txt # Dependencies
├── src/
│ ├── models.py # Database models
│ ├── routes.py # Route handlers
│ ├── templates/ # HTML templates
│ └── static/ # Static assets
└── tests/
├── conftest.py # Test configurations
└── test_routes.py # Comprehensive test suite
Once the structure was set, Copilot helped me bring my ideas to life by providing the necessary HTML, CSS, and database configurations. The real challenge was styling the app, which I was able to overcome by providing Copilot with a reference image URL. It quickly updated the CSS file to match the desired aesthetic, transforming the app’s appearance.
The app was functional, allowing users to add and view goals. However, the delete functionality was still missing. Fortunately, with Copilot’s assistance, implementing that feature was a breeze. I also wrote unit tests to ensure everything worked as expected.
GitHub Models
While I didn’t use GitHub Models for this project, I am eager to explore them in the future.
Conclusion
This project was an enriching learning experience, and I believe it can help users achieve their personal development goals. With GitHub Copilot’s assistance, I was able to rapidly prototype and implement the features I had envisioned.
Top comments (0)