{"id":25573021,"url":"https://github.com/luukalindgren/variation-generator-utu","last_synced_at":"2026-04-09T21:34:22.761Z","repository":{"id":252353589,"uuid":"840183253","full_name":"Luukalindgren/variation-generator-utu","owner":"Luukalindgren","description":"Webtool for creating variations of exercises, powered by ChatGPT API.","archived":false,"fork":false,"pushed_at":"2024-08-09T06:51:54.000Z","size":2,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-08-09T07:59:17.234Z","etag":null,"topics":["angular","nodejs","openai","typescript"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Luukalindgren.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-08-09T06:31:27.000Z","updated_at":"2024-08-09T07:59:22.358Z","dependencies_parsed_at":"2024-08-09T08:09:22.729Z","dependency_job_id":null,"html_url":"https://github.com/Luukalindgren/variation-generator-utu","commit_stats":null,"previous_names":["luukalindgren/variation-generator-utu"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Luukalindgren%2Fvariation-generator-utu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Luukalindgren%2Fvariation-generator-utu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Luukalindgren%2Fvariation-generator-utu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Luukalindgren%2Fvariation-generator-utu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Luukalindgren","download_url":"https://codeload.github.com/Luukalindgren/variation-generator-utu/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239937713,"owners_count":19721488,"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":["angular","nodejs","openai","typescript"],"created_at":"2025-02-21T01:18:49.787Z","updated_at":"2026-03-22T20:30:22.781Z","avatar_url":"https://github.com/Luukalindgren.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Variation Generator\n\n#### [Link to the website](https://variationtool.utu.fi)\n\n## Overview\n\nThis repository serves as a showcase for a Variation Generator tool developed during my tenure as a Research Assistant at the University of Turku. This web tool was designed to assist teachers on creating variations of exercises efficiently.\n\n## Project Description\n\nThe Variation Generator tool is a comprehensive web application that enables users to:\n\n- Upload an Excel file with multiple exercises, and get variations of each one.\n- Upload .txt file with code, or some exercise, and get variations of it.\n- Regenerate these variations with more creativity.\n- Modify them via ChatGPT chat.\n- Download the generated variations.\n- Keyboard shortcuts to manage the tool without mouse.\n\nThe website aims to streamline the exercise variation creation process, making it more efficient for faculty members.\n\n## Development\n\nThe project was developed using the following technologies:\n\n- **Frontend**: TypeScript, Angular\n- **Backend**: Node.js, Express.js, OpenAI API\n- **Hosting**: Docker, Nginx, UTU's virtual server\n\n## Collaboration\n\nThis project was a collaborative effort with my co-workers Javier Ponce Gomez and William Lempinen. Javier worked with this alone in the beginning and was responsible for the whole project until we came to assist him with William. We worked closely throughout the project lifecycle, from planning and development to testing and deployment.\n\n## Acknowledgments\n\nI would like to express my gratitude to the University of Turku for providing the opportunity to work on this project.\n\n## Disclaimer\n\nPlease note that the source code for this project is the property of the University of Turku and is not available for public distribution. This repository serves solely as a demonstration of the project and its capabilities.\n\n## Screenshots:\n\n![image](https://github.com/user-attachments/assets/f8014a6d-14b9-4131-9abd-a76fa0eab488)\n![image](https://github.com/user-attachments/assets/65da83c2-6436-49de-96ab-62245b97e754)\n![image](https://github.com/user-attachments/assets/8e2e16d8-52d6-4905-af16-742007718bdc)\n![image](https://github.com/user-attachments/assets/e4b0f014-0923-482c-b97b-48c019a21db9)\n![image](https://github.com/user-attachments/assets/2cc16f30-7194-4a29-9b26-38e5161357c3)\n![image](https://github.com/user-attachments/assets/69a12bb2-47ee-486f-bf37-fa1e591cb53a)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluukalindgren%2Fvariation-generator-utu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fluukalindgren%2Fvariation-generator-utu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluukalindgren%2Fvariation-generator-utu/lists"}