{"id":26045085,"url":"https://github.com/juniorreisx/backend-user","last_synced_at":"2026-04-09T12:04:11.927Z","repository":{"id":281123212,"uuid":"944280651","full_name":"JuniorReisx/BackEnd-User","owner":"JuniorReisx","description":"A backend API built with TypeScript, Express, Sequelize, and Supabase. It supports basic CRUD operations for user management, including authentication with JWT. Designed for real-time data handling and secured routes.","archived":false,"fork":false,"pushed_at":"2025-03-07T04:49:24.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-04T09:57:48.050Z","etag":null,"topics":["cors","express","jwt","middleware","postgresql","sequelize","supabase","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/JuniorReisx.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":"2025-03-07T04:41:50.000Z","updated_at":"2025-03-07T04:49:28.000Z","dependencies_parsed_at":"2025-03-07T05:37:22.368Z","dependency_job_id":null,"html_url":"https://github.com/JuniorReisx/BackEnd-User","commit_stats":null,"previous_names":["juniorreisx/backend-user"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/JuniorReisx/BackEnd-User","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuniorReisx%2FBackEnd-User","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuniorReisx%2FBackEnd-User/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuniorReisx%2FBackEnd-User/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuniorReisx%2FBackEnd-User/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JuniorReisx","download_url":"https://codeload.github.com/JuniorReisx/BackEnd-User/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JuniorReisx%2FBackEnd-User/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278296084,"owners_count":25963432,"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-04T02:00:05.491Z","response_time":63,"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":["cors","express","jwt","middleware","postgresql","sequelize","supabase","typescript"],"created_at":"2025-03-07T19:31:16.243Z","updated_at":"2025-10-04T09:57:48.701Z","avatar_url":"https://github.com/JuniorReisx.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n---\n\n## Backend-TS2\n\nThis is a backend project built with TypeScript, Express, Sequelize, and Supabase, with basic authentication and user management functionalities. It provides an API to manage users in a Supabase database, with routes for creating, reading, updating, and deleting users.\n\n## Technologies Used\n\n- **Node.js** - JavaScript runtime environment for the backend.\n- **TypeScript** - A superset of JavaScript that adds static typing.\n- **Express** - A framework for building APIs in Node.js.\n- **Sequelize** - An ORM for interacting with the database.\n- **Supabase** - Real-time and authentic database (similar to Firebase).\n- **JWT** - Authentication based on JSON Web Tokens for security.\n\n## Prerequisites\n\n- Node.js (version 16 or higher)\n- npm or yarn\n- Supabase account\n\n## Installation\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/YourUsername/backend-ts2.git\n```\n\n2. Navigate to the project directory:\n\n```bash\ncd backend-ts2\n```\n\n3. Install the project dependencies:\n\n```bash\nnpm install\n# or\nyarn install\n```\n\n4. Create a `.env` file at the root of the project with the following environment variables:\n\n```env\nSUPABASE_URL=\u003cYour Supabase URL\u003e\nSUPABASE_KEY=\u003cYour Supabase API Key\u003e\nJWT_SECRET=\u003cYour JWT secret key\u003e\n```\n\n## Running the Project\n\n1. To run the project in development mode, use the command:\n\n```bash\nnpm run dev\n# or\nyarn dev\n```\n\nThe server will start at `http://localhost:3000`.\n\n## API Routes\n\n### **POST /users** - Create a new user\n\nCreate a new user with `name`, `email`, `age`, `gender`, and `password` information.\n\n**Example request body:**\n\n```json\n{\n  \"name\": \"John Doe\",\n  \"email\": \"john@example.com\",\n  \"age\": 25,\n  \"gender\": \"Male\",\n  \"password\": \"password123\"\n}\n```\n\n### **GET /users** - Get all users\n\nRetrieve all users registered in the database.\n\n### **PUT /users/:id** - Update a user\n\nUpdate the information of a specific user.\n\n**Example request body:**\n\n```json\n{\n  \"name\": \"John Doe Updated\",\n  \"email\": \"john.new@example.com\",\n  \"age\": 26,\n  \"gender\": \"Male\"\n}\n```\n\n### **DELETE /users/:id** - Delete a user\n\nDelete the user specified by `id`.\n\n## Authentication\n\nThe API uses JWT for authentication. To protect private routes, the JWT token must be sent in the `Authorization` header in the format:\n\n```\nBearer \u003cyour-jwt-token\u003e\n```\n\n## Scripts\n\n- **dev**: Starts the server in development mode.\n\n```bash\nnpm run dev\n```\n\n- **build**: Compiles TypeScript code to JavaScript.\n\n```bash\nnpm run build\n```\n\n- **start**: Starts the server with the compiled code.\n\n```bash\nnpm start\n```\n\n## Contributing\n\n1. Fork this repository.\n2. Create a new branch (`git checkout -b feature-feature-name`).\n3. Make your changes.\n4. Commit your changes (`git commit -m 'feat: add new feature'`).\n5. Push to the branch (`git push origin feature-feature-name`).\n6. Create a new pull request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\nThis README provides the basic structure of your project, the technologies used, how to install, run, and contribute. You can adjust the details as needed depending on how the project evolves.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuniorreisx%2Fbackend-user","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuniorreisx%2Fbackend-user","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuniorreisx%2Fbackend-user/lists"}