{"id":22142520,"url":"https://github.com/ethanzrd/devclub-project-2","last_synced_at":"2025-03-24T11:26:21.474Z","repository":{"id":178375936,"uuid":"427289341","full_name":"ethanzrd/devclub-project-2","owner":"ethanzrd","description":null,"archived":false,"fork":false,"pushed_at":"2021-11-12T09:11:07.000Z","size":6252,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T16:43:14.088Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/ethanzrd.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":"2021-11-12T08:44:14.000Z","updated_at":"2021-11-12T09:11:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"6838c81f-7daf-43d9-9c83-6e65e057d27a","html_url":"https://github.com/ethanzrd/devclub-project-2","commit_stats":null,"previous_names":["ethanzrd/devclub-project-2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanzrd%2Fdevclub-project-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanzrd%2Fdevclub-project-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanzrd%2Fdevclub-project-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanzrd%2Fdevclub-project-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ethanzrd","download_url":"https://codeload.github.com/ethanzrd/devclub-project-2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245259532,"owners_count":20586216,"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-12-01T21:16:54.596Z","updated_at":"2025-03-24T11:26:21.461Z","avatar_url":"https://github.com/ethanzrd.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Colman Dev Club Recruitment Day Challenge\n\n  In this challenge you will have to add a secure sign in/up [JWT](https://jwt.io/) based functionality to the prebuilt dashboard.\n\n## Run Locally\n  \n  - Clone this project.\n  - In one terminal process run `cd backend; npm i; npm start`.\n  - In another terminal process run `cd frontend; npm i; npm start`\n\n## What you get\n  \n### Back\n\n  - Pre-built NodeJs project, consumes with an express server and example route.\n\n### Front\n\n  - one of [creative team](https://www.creative-tim.com/) dashboard templates.\n\n## What you need to do\n\n### Back\n\n  - Extend the users api so it can support these basic operations:\n    - sign-in endpoint which generates a [JWT](https://jwt.io/) with the user credentials and send it to the user.\n    - sign-up endpoint\n    - sign-out endpoint\n    - edit user endpoint which will be only accessible with the relevant user’s JWT.\n  - **Important note** you are not required to manage a DB, added or delete data can be refreshed in each server run.\n  - 🚀 **BONUS** 🚀  passwords in the db should be encrypted (you are not require to invent a special encryption and hash encryption you will find online will be enough for this bonus).\n  \n\n### Front\n\n  - Add a decent looking login page with username and password, based on the existing\n    template. On sign in you are able to save the JWT coming from the server in any way you would like.\n  - Add a decent looking registration page with username and password, based on the\n    existing template, with the following fields:\n    \u003cimg src=\"./exampleFields.png\" /\u003e\n  - Add a logout feature which clears the user’s session (and delete the use JWT)\n  - Integrate the existing “User Profile” component with your logged in user’s state,\n    enabling the option to edit the user details\n\n## Your Score\n\nYour challenge score will be calculated on each of these subjects: \n\n  - Your ability to study a given subjects and apply what you learned.\n  - Your ability to work in a group **IMPORTANT**.\n  - Your ability to search online and find solutions in realtime.\n  - 🚀 **TEAM BONUS** 🚀 -\u003e work with git and github.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanzrd%2Fdevclub-project-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethanzrd%2Fdevclub-project-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanzrd%2Fdevclub-project-2/lists"}