{"id":23903361,"url":"https://github.com/p0ppoff/beebuzziness_test","last_synced_at":"2026-06-19T15:01:56.465Z","repository":{"id":42989247,"uuid":"205512980","full_name":"P0ppoff/Beebuzziness_test","owner":"P0ppoff","description":"BeeBuzziness Test Technique","archived":false,"fork":false,"pushed_at":"2023-01-04T08:35:29.000Z","size":682,"stargazers_count":0,"open_issues_count":15,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-23T11:13:58.816Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://hub.beebuzziness.com","language":"JavaScript","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/P0ppoff.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":"2019-08-31T07:40:58.000Z","updated_at":"2020-03-16T10:13:21.000Z","dependencies_parsed_at":"2023-02-02T05:32:05.941Z","dependency_job_id":null,"html_url":"https://github.com/P0ppoff/Beebuzziness_test","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/P0ppoff/Beebuzziness_test","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0ppoff%2FBeebuzziness_test","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0ppoff%2FBeebuzziness_test/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0ppoff%2FBeebuzziness_test/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0ppoff%2FBeebuzziness_test/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/P0ppoff","download_url":"https://codeload.github.com/P0ppoff/Beebuzziness_test/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/P0ppoff%2FBeebuzziness_test/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34536283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"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-01-04T22:54:08.289Z","updated_at":"2026-06-19T15:01:56.410Z","avatar_url":"https://github.com/P0ppoff.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BeeBuzziness Test Technique\n\n## Énoncé\n\n### Affichage sur écran LCD\n\nCréer la logique pour afficher des numéros sur un écran LCD. \nCet écran dispose d’un grid de 3x3, chaque case peut contenir une espace, un tiret bas, ou un pipe.\n\nPar exemple (ici en utilisant un point à la place d’espace)\n```bash\n._.   ...   ._.   ._.   ...   ._.   ._.   ._.   ._.   ._.\n|.|   ..|   ._|   ._|   |_|   |_.   |_.   ..|   |_|   |_|\n|_|   ..|   |_.   ._|   ..|   ._|   |_|   ..|   |_|   ..|\n```\n\nExemple du programme appelé avec `910`\n\n````bash\n._. ... ._.\n|_| ..| |.|\n..| ..| |_|\n````\n\nUn programme en ligne de commandes permettra d’exécuter le résultat de ton travail.\n\n## Solution proposée\n\nEt voici la ligne de commande :\n```bash\n# Avec Docker\ndocker build -t test_BeeBuzziness .\ndocker run test_BeeBuzziness 0123456789\n# Avec Node\nyarn\nyarn dev 0123456789\n```\n\n## Histoire de la réalisation\n\n### Step 1\n\nMise en place d’un projet avec ce qu’il faut pour développer.\n\n### Step 2\n\nOn commance avec les chiffres les plus importants: 0, 1, 2 et 3. On peut maintenant lancer le programme avec ces trois arguments:\n```shell script\n$ yarn dev 0\n$ yarn dev 1\n$ yarn dev 2\n$ yarn dev 3\n```\n\n### Step 3\n\n#### Avant de commencer\n\nOn commence la partie sympa pour l’esprit. Mon idée est de créer toujours 3 lignes pour les afficher ensuite avec le MAP.\nIl va donc falloir zipper les chiffres les uns après les autres pour continuer sur la même logique.\n\n#### Une fois fini\n\nJ’ai pris un pause de midi puis j’ai continué. J’ai mis beaucoup de temps à trouver comment faire mon zip.\nJe pensais naïvement que c’était natif JS comme dans certains langages et puis non. J’ai essayé avec *lodash*.\nMais ça ne me plaisait pas trop. J’ai fini par trouver mon bonheur avec [ceci](https://gist.github.com/renaudtertrais/25fc5a2e64fe5d0e86894094c6989e10).\nJe l’ai testé puis refactoré pour mettre des noms de variables avec un peu plus de sens.\nJ’ai fini par ajouter les restes de chiffres. Maintenant le programme répond bien quand on lui donne des arguements à macher.\nLa prochaine étape est donc de mieux gérer l’input de l’utilisateur.\n\n### Step 4\n\nJ’ai mis en place une gestion toute simple de l'input utilisateur. C’est pas extra mais ça fait le job.\n\n### Step 5\n\nJ’ai fait un tout petit container Docker. Il peut s’exéuter sans arguement ou directement avec le nombre.\nJ’ai vu pendant ce test que je n’avais pas géré les grands nombres (environ 30 chiffres). Il faudrait prendre le temps pour voir pourquoi la fonction `map` ne veut pas.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp0ppoff%2Fbeebuzziness_test","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fp0ppoff%2Fbeebuzziness_test","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fp0ppoff%2Fbeebuzziness_test/lists"}