{"id":19988765,"url":"https://github.com/e22m4u/js-repository-mongodb-adapter","last_synced_at":"2025-05-04T08:32:02.521Z","repository":{"id":233554568,"uuid":"773024524","full_name":"e22m4u/js-repository-mongodb-adapter","owner":"e22m4u","description":"MongoDB адаптер для @e22m4u/js-repository","archived":false,"fork":false,"pushed_at":"2025-04-24T00:57:55.000Z","size":520,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-27T20:31:07.820Z","etag":null,"topics":["database","datasource","mongodb","nodejs","odm","orm","relations","repository"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/e22m4u.png","metadata":{"files":{"readme":"README-ru.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2024-03-16T14:35:13.000Z","updated_at":"2025-04-24T00:57:54.000Z","dependencies_parsed_at":"2024-06-10T12:29:06.532Z","dependency_job_id":"37361b5c-4d60-46f4-a811-dbb3d761ceb2","html_url":"https://github.com/e22m4u/js-repository-mongodb-adapter","commit_stats":{"total_commits":104,"total_committers":2,"mean_commits":52.0,"dds":"0.28846153846153844","last_synced_commit":"06c98bb64c669dd21b5511c3f36f8a90b0ccaf0f"},"previous_names":["e22m4u/js-repository-mongodb-adapter"],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e22m4u%2Fjs-repository-mongodb-adapter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e22m4u%2Fjs-repository-mongodb-adapter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e22m4u%2Fjs-repository-mongodb-adapter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e22m4u%2Fjs-repository-mongodb-adapter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/e22m4u","download_url":"https://codeload.github.com/e22m4u/js-repository-mongodb-adapter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252308223,"owners_count":21727147,"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":["database","datasource","mongodb","nodejs","odm","orm","relations","repository"],"created_at":"2024-11-13T04:44:04.477Z","updated_at":"2025-05-04T08:32:00.700Z","avatar_url":"https://github.com/e22m4u.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## @e22m4u/js-repository-mongodb-adapter\n\nMongoDB адаптер для [@e22m4u/js-repository](https://www.npmjs.com/package/@e22m4u/js-repository)  \n\n## Установка\n\n```bash\nnpm install @e22m4u/js-repository-mongodb-adapter\n```\n\n## Параметры\n\nВсе указанные параметры опциональны:\n\n| название | значение по умолчанию |\n|----------|-----------------------|\n| protocol | `'mongodb'`           |\n| host     | `'127.0.0.1'`         |\n| port     | `27017`               |\n| database | `'database'`          |\n| username | `undefined`           |\n| password | `undefined`           |\n\nПример:\n\n```js\nimport {Schema} from '@e22m4u/js-repository';\n\nconst schema = new Schema();\n\n// объявление источника\nschema.defineDatasource({\n  name: 'myMongo', // название источника\n  adapter: 'mongodb', // имя адаптера\n  // параметры\n  host: '127.0.0.1',\n  port: 27017,\n  database: 'myDatabase',\n});\n\n// объявление модели\nschema.defineModel({\n  name: 'user', // название модели\n  datasource: 'myMongo', // используемый источник\n  properties: { // поля модели\n    name: 'string',\n    surname: 'string',\n  },\n});\n\n// получаем репозиторий по названию модели и создаем запись\nconst userRep = schema.getRepository('user');\nconst user = await userRep.create({name: 'John', surname: 'Doe'});\n\nconsole.log(user);\n// {\n//   id: '64f3454e5e0893c13f9bf47e',\n//   name: 'John',\n//   surname: 'Doe',\n// }\n```\n\n## Тесты\n\nЗапуск контейнера `mongo:latest` скриптом `setup.sh`\n\n```bash\n./setup.sh\n```\n\nВыполнение тестов\n\n```bash\nnpm run test\n```\n\n## Лицензия\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe22m4u%2Fjs-repository-mongodb-adapter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fe22m4u%2Fjs-repository-mongodb-adapter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe22m4u%2Fjs-repository-mongodb-adapter/lists"}