{"id":21520935,"url":"https://github.com/globalwebindex/challenge-scala","last_synced_at":"2025-06-30T11:04:45.458Z","repository":{"id":41678029,"uuid":"353029355","full_name":"GlobalWebIndex/challenge-scala","owner":"GlobalWebIndex","description":null,"archived":false,"fork":false,"pushed_at":"2023-05-30T22:28:43.000Z","size":4,"stargazers_count":1,"open_issues_count":1,"forks_count":15,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-03-17T17:16:22.725Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/GlobalWebIndex.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}},"created_at":"2021-03-30T14:25:12.000Z","updated_at":"2024-07-31T22:43:55.000Z","dependencies_parsed_at":"2023-02-15T10:16:09.368Z","dependency_job_id":null,"html_url":"https://github.com/GlobalWebIndex/challenge-scala","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/GlobalWebIndex/challenge-scala","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GlobalWebIndex%2Fchallenge-scala","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GlobalWebIndex%2Fchallenge-scala/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GlobalWebIndex%2Fchallenge-scala/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GlobalWebIndex%2Fchallenge-scala/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GlobalWebIndex","download_url":"https://codeload.github.com/GlobalWebIndex/challenge-scala/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GlobalWebIndex%2Fchallenge-scala/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262762459,"owners_count":23360329,"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":[],"created_at":"2024-11-24T01:04:56.902Z","updated_at":"2025-06-30T11:04:45.407Z","avatar_url":"https://github.com/GlobalWebIndex.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scala challenge\n\nHello future colleague! In this assessment, we request that you implement an HTTP application that converts CSV data sets to JSON data sets. The application will provide the following endpoints:\n \n## Create Task \n#### POST /task/\nCreate a task with URI pointing to CSV dataset which will be converted to Json and reuturns taskId.\n   - 2 tasks can be run at the same time\n   - the task is executed immediately if `running-tasks \u003c 2` \n\n## List Tasks \n#### GET /task/\n\n## Task Detail \n#### GET /task/[taskId]\nReturn informations about the task:    \n- lines processed\n- avg lines processed (count/sec)\n- state (`SCHEDULED/RUNNING/DONE/FAILED/CANCELED`)\n- result (uri where the JSON file can be downloaded)\n\nKeep the connection open until the task isn't in a terminal state and send the updated response every 2 seconds.\n\n## Cancel Task\n#### DELETE /task/[taskId]\nTasks in `SCHEDULED` or `RUNNING` state can be canceled.\n\n## Get JSON File\nEndpoint providing generated JSON files.\n\n## Notes\n- Keep the state only in memory except generated json files.\n- Take into account that input files don't have to fit into memory.\n\nCSV datasets for testing purposes can be found at the following links:\n* https://catalog.data.gov/dataset?res_format=CSV\n* https://www.kaggle.com/datasets\n\nFeel free to ask any questions through email or github.\n\nGood Luck!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglobalwebindex%2Fchallenge-scala","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fglobalwebindex%2Fchallenge-scala","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglobalwebindex%2Fchallenge-scala/lists"}