{"id":23150743,"url":"https://github.com/xonoxc/express.backend","last_synced_at":"2025-04-04T14:43:48.308Z","repository":{"id":252185446,"uuid":"701609055","full_name":"xonoxc/express.backend","owner":"xonoxc","description":null,"archived":false,"fork":false,"pushed_at":"2023-10-07T03:53:07.000Z","size":3300,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-10T00:38:13.496Z","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/xonoxc.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":"2023-10-07T03:43:45.000Z","updated_at":"2023-10-07T03:53:11.000Z","dependencies_parsed_at":"2024-08-08T07:14:00.048Z","dependency_job_id":"11e7018a-a347-45fd-905d-269894964a95","html_url":"https://github.com/xonoxc/express.backend","commit_stats":null,"previous_names":["xonoxc/express.backend"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xonoxc%2Fexpress.backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xonoxc%2Fexpress.backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xonoxc%2Fexpress.backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xonoxc%2Fexpress.backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xonoxc","download_url":"https://codeload.github.com/xonoxc/express.backend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247198431,"owners_count":20900079,"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-17T18:18:22.976Z","updated_at":"2025-04-04T14:43:48.284Z","avatar_url":"https://github.com/xonoxc.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# User Authentication Backend with Node.js and Mogogo DB\n\nThis is a user authentication backend built using Node.js and Mogogo DB. It provides secure authentication and user management features for your application.\n\n## Table of Contents\n\n1. [Features](#features)\n2. [Getting Started](#getting-started)\n   - [Prerequisites](#prerequisites)\n   - [Installation](#installation)\n3. [Configuration](#configuration)\n4. [Usage](#usage)\n5. [API Endpoints](#api-endpoints)\n\n## Features\n\n- User registration with email verification.\n- User login with JWT (JSON Web Tokens) authentication.\n- Password reset functionality.\n- Secure password hashing.\n- Role-based access control.\n- MongoDB integration.\n\n## Getting Started\n\n### Prerequisites\n\nBefore you begin, ensure you have met the following requirements:\n\n- Node.js installed. Download it from [nodejs.org](https://nodejs.org/).\n- Mogogo DB or MongoDB installed and running. You can get it from [mongodb.com](https://www.mongodb.com/).\n\n### Installation\n\n1. Clone the repository:\n\n   ```shell\n   git clone https://github.com/yourusername/express.backend.git\n   cd express.backend\n\n   ```\n\n2. Install dependencies:\n\n   ```shell\n   npm install\n   ```\n\n3. Create a `.env` file in the project root and configure your environment variables (see [Configuration](#configuration)).\n\n4. Start the server:\n\n   1. to start server without nodemon\n\n   ```shell\n   npm start\n\n   ```\n\n   2. to start a server with nodemon\n\n   ```shell\n   npm run dev\n\n   ```\n\nYour authentication backend should now be running on `http://localhost:4000`.\n\n## Configuration\n\nYou need to set up your environment variables in a `.env` file in the project root. Here's an example `.env` file:\n\n```env\nPORT=3000\nMONGODB_URI=mongodb://localhost:27017/mogogodb\nJWT_SECRET=mysecretkey\nEMAIL_SENDER=email@example.com\nEMAIL_PASSWORD=email_password\n```\n\nMake sure to replace the placeholder values with your actual configuration.\n\n## Usage\n\n### API Endpoints\n\nThis backend provides the following API endpoints:\n\n- `POST /users/register` - Register a new user.\n- `GET /users` - get all the users in the database.\n- `GET /users/:username` - get a perticular user based on userame\n\nYou can explore these endpoints using a tool like Postman or integrate them into your frontend application.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxonoxc%2Fexpress.backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxonoxc%2Fexpress.backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxonoxc%2Fexpress.backend/lists"}