{"id":21347463,"url":"https://github.com/devhyrum/back-end-authentication-system","last_synced_at":"2026-05-17T12:08:02.100Z","repository":{"id":249583850,"uuid":"831914745","full_name":"devHyrum/Back-end-Authentication-System","owner":"devHyrum","description":"La API ofrece endpoints para el registro de usuarios, inicio de sesión, verificación de correo electrónico, actualización de perfil de usuario y manejo de imágenes de perfil. Está construido con Node.js, Express y utiliza JWT para la autenticación.","archived":false,"fork":false,"pushed_at":"2024-07-22T02:48:00.000Z","size":404,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-22T16:32:48.180Z","etag":null,"topics":["bcrypt","jwt-authentication","react","sql"],"latest_commit_sha":null,"homepage":"https://back-end-authentication-system.onrender.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/devHyrum.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-07-22T01:10:38.000Z","updated_at":"2024-09-02T00:37:54.000Z","dependencies_parsed_at":"2024-07-22T02:51:47.107Z","dependency_job_id":null,"html_url":"https://github.com/devHyrum/Back-end-Authentication-System","commit_stats":null,"previous_names":["devhyrum/back-end-authentication-system"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devHyrum%2FBack-end-Authentication-System","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devHyrum%2FBack-end-Authentication-System/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devHyrum%2FBack-end-Authentication-System/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devHyrum%2FBack-end-Authentication-System/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devHyrum","download_url":"https://codeload.github.com/devHyrum/Back-end-Authentication-System/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243822294,"owners_count":20353500,"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":["bcrypt","jwt-authentication","react","sql"],"created_at":"2024-11-22T02:14:17.462Z","updated_at":"2026-05-17T12:07:57.063Z","avatar_url":"https://github.com/devHyrum.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Back-end Authentication System\n![mobile](./public/mobile.png)\n![desktop](./public/desktop.png)\n\nEste repositorio contiene el backend para un sistema de autenticación. La API ofrece endpoints para el registro de usuarios, inicio de sesión, verificación de correo electrónico, actualización de perfil de usuario y manejo de imágenes de perfil. Está construido con Node.js, Express y utiliza JWT para la autenticación.\n\n## Tabla de Contenidos\n\n- [Instalación](#instalación)\n- [Uso](#uso)\n- [Endpoints](#endpoints)\n- [Swagger API Documentation](#swagger-api-documentation)\n- [Estructura del Proyecto](#estructura-del-proyecto)\n- [Contribuciones](#contribuciones)\n\n## Instalación\n\n1. Clona el repositorio:\n\n```bash\ngit clone https://github.com/devHyrum/Back-end-Authentication-System.git\n```\n2. Navega al directorio del proyecto:\n```bash\ncd Back-end-Authentication-System\n```\n3. Instala las dependencias:\n```bash\nnpm install\n```\n4. Crea un archivo .env en la raíz del proyecto y define las siguientes variables de entorno:\n```bash\nPORT=3000\nDB_SECRET_KEY=your_secret_key\n```\n\n## Uso\nPara iniciar el servidor de desarrollo, ejecuta:\n```bash\nnpm start\n```\nEl servidor se ejecutará en http://localhost:3000.\n\n## Endpoints\n### Autenticación\n- **POST /api/auth/register**\n    - **Registra un nuevo usuario.**\n    - **Cuerpo de la solicitud**: { \"username\": \"user\", \"password\": \"pass\", \"email\": \"email\" }\n    - **Respuesta**: { \"message\": \"Usuario registrado exitosamente\" }\n- **POST /api/auth/login**\n    - **Inicia sesión un usuario.**\n    - **Cuerpo de la solicitud**: { \"username\": \"user\", \"password\": \"pass\" }\n    - **Respuesta**: { \"token\": \"jwt_token\" }\n- **POST /api/auth/check-email**\n    - Verifica si un correo electrónico ya está registrado.\n    - **Cuerpo de la solicitud**: { \"email\": \"email\" }\n    - **Respuesta**: { \"exists\": true/false }\n### Usuarios\n- **GET /api/auth/me**\n    - Obtiene información del usuario autenticado.\n    - Requiere token JWT en los encabezados.\n- **PUT /api/auth/update**\n    - Actualiza la información del usuario.\n    - Requiere token JWT en los encabezados y puede incluir una imagen de perfil.\n- **GET /api/auth/image/**\n    - Obtiene la imagen de perfil del usuario autenticado.\n    - Requiere token JWT en los encabezados.\n\n## Swagger API Documentation\nLa documentación de la API está disponible en /api-docs. Para generar la documentación con Swagger, sigue estos pasos:\n\n1. Instala las dependencias necesarias:\n```bash\nnpm install swagger-ui-express swagger-autogen\n```\n2. Genera la documentación:\n```bash\nnpm run swagger-autogen\n```\n3. Inicia el servidor y navega a http://localhost:3000/api-docs para ver la documentación interactiva.\n\n## Estructura del Proyecto\n```plaintext\n.\n├── config\n│   ├── config.js\n│   ├── multer.js\n│   └── db.js\n├── controllers\n│   └── usuarios.controller.js\n├── helpers\n│   └── errorHandler.js\n├── middleware\n│   └── auth.js\n├── models\n│   └── Usuario.js\n├── routes\n│   ├── auth.routes.js\n│   └── index.routes.js\n├── index.js\n├── swagger.js\n├── package.json\n└── README.md\n```\n## Contribuciones\nLas contribuciones son bienvenidas. Para contribuir, por favor sigue estos pasos:\n\n1. Haz un fork del repositorio.\n2. Crea una nueva rama (git checkout -b             feature-nueva-funcionalidad).\n3. Realiza tus cambios.\n4. Haz un commit de tus cambios (git commit -am 'Añadir nueva 1. funcionalidad').\n5. Sube tus cambios (git push origin feature-nueva-funcionalidad).\n6. Abre un Pull Request.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevhyrum%2Fback-end-authentication-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevhyrum%2Fback-end-authentication-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevhyrum%2Fback-end-authentication-system/lists"}