{"id":31959057,"url":"https://github.com/docplanner/js-recruitment-assignment","last_synced_at":"2026-01-20T17:34:03.898Z","repository":{"id":232606709,"uuid":"784614929","full_name":"DocPlanner/js-recruitment-assignment","owner":"DocPlanner","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-02T09:59:01.000Z","size":10275,"stargazers_count":0,"open_issues_count":0,"forks_count":6,"subscribers_count":41,"default_branch":"develop","last_synced_at":"2024-12-02T10:38:30.775Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Vue","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/DocPlanner.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-04-10T07:48:32.000Z","updated_at":"2024-12-02T09:59:05.000Z","dependencies_parsed_at":"2024-04-10T17:11:19.725Z","dependency_job_id":"b751bc57-05bf-4c60-b9fe-6bad9f0942e2","html_url":"https://github.com/DocPlanner/js-recruitment-assignment","commit_stats":null,"previous_names":["docplanner/js-recruitment-assignment"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/DocPlanner/js-recruitment-assignment","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DocPlanner%2Fjs-recruitment-assignment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DocPlanner%2Fjs-recruitment-assignment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DocPlanner%2Fjs-recruitment-assignment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DocPlanner%2Fjs-recruitment-assignment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DocPlanner","download_url":"https://codeload.github.com/DocPlanner/js-recruitment-assignment/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DocPlanner%2Fjs-recruitment-assignment/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279019317,"owners_count":26086711,"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","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-10-14T15:19:37.031Z","updated_at":"2025-10-14T15:19:38.269Z","avatar_url":"https://github.com/DocPlanner.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docplanner Technical Test\n\nWelcome onboard!\n\nAs you may have already seen, we really like to experiment and iterate here at Docplanner and just now we’re dealing\nwith a new amazing feature for our users: **reschedule an appointment!**\n\nSo your first task with us will be to develop a fast prototype for a small app that allows our patients to reschedule an\nexisting appointment. This is the design:\n\n![Basic design](./assets/ui-example.png)\n\n\u003csup\u003e\u003ci\u003eYou can see a preview of a working application with all the features at the end of the readme.\u003c/i\u003e\u003c/sup\u003e\n\nAs you can see, when the users access the app they see basic data about the current appointment: the doctor and the\ndate. As initial data, suppose you had an appointment with **Dr. Simeon Molas** on **Friday, May 21th at 10:30**.\n\nThe available slots for the next seven days are shown, starting from today. Only a few slots are initially shown but\nthere is a button to “See more hours” under them. Some of the slots may be **Taken**, so they’re not available to the\npatient to book.\n\nThe user could explore future weeks, but not past weeks, by using the right and left arrows on the header of the\ncalendar. Whenever he finds a slot he’d like to book, he just clicks on it and the appointment and confirm. If the\nreschedule is successful, the date of the appointment is updated. Since the user clicks the slot until he gets an\nanswer, a loading spinner with crossed-out date to be changed will appear.\n\nIn order to get and manipulate the data you’ll have to use our API.\n\nBasically the GET where you'll retrieve slots for a maximum of seven days:\n\n- https://draliatest.azurewebsites.net/api/availability/GetWeeklySlots/{yyyyMMdd}\n\nAnd the POST with an example of the request’s body used on the endpoint:\n\n- https://draliatest.azurewebsites.net/api/availability/BookSlot\n\n```\n{\n  \"Start\": Start timestamp (string \"YYYY-MM-DD HH:mm:ss\"),\n  \"End\": End timestamp (string \"YYYY-MM-DD HH:mm:ss\"),\n  \"Comments\": Additional instructions for the doctor (string),\n  \"Patient\" : {\n    \"Name\" : Patient Name (string),\n    \"SecondName\" : Patient SecondName (string),\n    \"Email\" : Patient Email (string),\n    \"Phone\" : Patient Phone (string)\n  }\n}\n```\n\n## Notes\nIn order to make it easier for you, we’ll provide a boilerplate you can start the project with. Feel free to use any\nlibrary that it could fit to your solution. Also, boilerplate could be outdated, don't hesitate to update it or totally\nremove it.\n\nTo start from boilerplate you can execute:\n\n```\nyarn install \u0026\u0026 yarn serve \n```\nOn Linux or Mac Os\n\nOr alternatively \n\n```\nyarn install ; yarn serve\n```\nIf you are using Windows\n\n## Our expectations\n* Keep in mind that this is a prototype, we don’t expect from you to get the best possible solution but the best you could\ndo **in a few hours**, so your criteria is important. **The solution should work for every day of the week**.\n* Although it’s just a prototype, we’d like to see some structure on your code. Treat it more as a large-scale production\napplication — show your best skills, so we can know you better.\n* We’ll look at how you use the framework/libraries, architecture, test coverage, readability, maintainability,\nperformance, adherence to best coding practices. If you skip some of those, please provide comments, so we know what's\nyour approach.\n* Animations on going forward, backward or on see more slots are not mandatory.\n\n## Preview\n\n![](./assets/video.gif)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocplanner%2Fjs-recruitment-assignment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdocplanner%2Fjs-recruitment-assignment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocplanner%2Fjs-recruitment-assignment/lists"}