{"id":20840886,"url":"https://github.com/danfmaia/skillchrono","last_synced_at":"2025-09-13T05:35:47.292Z","repository":{"id":257983570,"uuid":"863800683","full_name":"danfmaia/SkillChrono","owner":"danfmaia","description":"SkillChrono is a Python-based tool for aggregating and visualizing technical skills across multiple projects. It generates markdown reports with sorted experience data, helping developers easily track their progress.","archived":false,"fork":false,"pushed_at":"2024-10-15T20:38:46.000Z","size":24,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-19T00:05:10.953Z","etag":null,"topics":["ai-assisted-development","codequery","codequery-api","codequery-gpt","developer-tools","experience-tracking","markdown-report","pytho","python","skill-aggregation","test-driven-development"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danfmaia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-27T00:04:50.000Z","updated_at":"2024-10-15T20:38:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"9d055efe-1634-43f1-bbdb-49db2b49cf40","html_url":"https://github.com/danfmaia/SkillChrono","commit_stats":null,"previous_names":["danfmaia/skillchrono"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danfmaia%2FSkillChrono","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danfmaia%2FSkillChrono/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danfmaia%2FSkillChrono/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danfmaia%2FSkillChrono/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danfmaia","download_url":"https://codeload.github.com/danfmaia/SkillChrono/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243196657,"owners_count":20251861,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-assisted-development","codequery","codequery-api","codequery-gpt","developer-tools","experience-tracking","markdown-report","pytho","python","skill-aggregation","test-driven-development"],"created_at":"2024-11-18T01:18:09.857Z","updated_at":"2025-03-12T10:16:10.399Z","avatar_url":"https://github.com/danfmaia.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SkillChrono\n\n**SkillChrono** is a Python-based tool designed to help developers organize and visualize their technical skills across various projects. It processes structured data, aggregates experience per technology, and generates markdown reports sorted both alphabetically and by experience duration.\n\n## Features\n\n- Aggregates technical experience across multiple projects.\n- Generates two markdown reports:\n  1. **Alphabetically Sorted Report** (`hard_skills.md`).\n  2. **Experience-Time Sorted Report** (`hard_skills_by_time.md`).\n- Converts months of experience into \"Y yr M mo\" format.\n\n## Installation\n\nTo install the project, first clone the repository and install the dependencies:\n\n```bash\ngit clone \u003crepository-url\u003e\ncd SkillChrono\npip install -r requirements.txt\n```\n\n## Usage\n\nTo generate the markdown reports, run the main script:\n\n```bash\npython main.py\n```\n\nThis will generate two reports under the `output/` directory:\n\n- `hard_skills.md`: Technologies sorted alphabetically.\n- `hard_skills_by_time.md`: Technologies sorted by experience duration.\n\n### Input Structure\n\nThe tool reads data from a structured YAML file (`data/experience_data.yaml`). Each job can have multiple projects, and each project can list several technologies with an optional duration in months. If the experience time for a technology is omitted, it defaults to the project's duration.\n\nHere’s a sample structure:\n\n```yaml\njobs:\n  - job_title: 'Full Stack Developer @ Company XYZ'\n    duration: 'Jan 2020 – Dec 2021'\n    projects:\n      - name: 'E-commerce Platform Development'\n        duration: 12\n        technologies:\n          Python:\n          Django:\n          PostgreSQL:\n          Docker: 8 # Technology-specific duration\n      - name: 'Internal Tooling Project'\n        duration: 6\n        technologies:\n          React:\n          Node.js:\n          Jenkins:\n          Kubernetes: 4 # Technology-specific duration\n\n  - job_title: 'Senior Developer @ ABC Corp'\n    duration: 'Jan 2022 – Present'\n    projects:\n      - name: 'Cloud Infrastructure Migration'\n        duration: 10\n        technologies:\n          AWS:\n          Terraform:\n          Docker:\n      - name: 'Microservices API Development'\n        duration: 8\n        technologies:\n          FastAPI:\n          Python:\n          Kafka:\n          Redis: 5 # Technology-specific duration\n```\n\n### Output Example\n\n#### Alphabetically Sorted:\n\n```\n| Technology | Experience Time |\n|------------|-----------------|\n| AWS        | 10 mo           |\n| Docker     | 1 yr 6 mo       |\n| Django     | 1 yr            |\n| FastAPI    | 8 mo            |\n| Kafka      | 8 mo            |\n| Kubernetes | 4 mo            |\n| Node.js    | 6 mo            |\n| PostgreSQL | 1 yr            |\n| Python     | 1 yr 8 mo       |\n| React      | 6 mo            |\n| Redis      | 5 mo            |\n| Terraform  | 10 mo           |\n```\n\n#### Experience-Time Sorted:\n\n```\n| Technology | Experience Time |\n|------------|-----------------|\n| Python     | 1 yr 8 mo       |\n| Docker     | 1 yr 6 mo       |\n| Django     | 1 yr            |\n| PostgreSQL | 1 yr            |\n| AWS        | 10 mo           |\n| Terraform  | 10 mo           |\n| FastAPI    | 8 mo            |\n| Kafka      | 8 mo            |\n| React      | 6 mo            |\n| Node.js    | 6 mo            |\n| Redis      | 5 mo            |\n| Kubernetes | 4 mo            |\n```\n\n## Development Approach\n\nSkillChrono was developed using a **Test-Driven Development (TDD)** approach to ensure code reliability and functionality. Additionally, the project was built with the assistance of AI tools such as **CodeQueryGPT** and **CodeQueryAPI**.\n\n- **CodeQueryGPT**: An AI assistant that contributed significantly to the development of this project. CodeQueryGPT assisted in feature development, testing, debugging, and helped streamline the documentation process. It provided real-time code analysis, suggestions for refactoring, and helped ensure that good coding practices were maintained throughout the project.\n\n- **CodeQueryAPI**: A Python API for querying project structures and content in real-time. You can explore the **CodeQueryAPI** repository [here](https://github.com/danfmaia/CodeQuery-API).\n\n## Contributing\n\nIf you'd like to contribute, please fork the repository and submit a pull request. For major changes, please open an issue first to discuss the proposed changes.\n\n## License\n\nThis project is licensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanfmaia%2Fskillchrono","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanfmaia%2Fskillchrono","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanfmaia%2Fskillchrono/lists"}