{"id":19490424,"url":"https://github.com/mostlyjs/mostly-node","last_synced_at":"2025-08-16T23:33:42.288Z","repository":{"id":52101941,"uuid":"89929709","full_name":"MostlyJS/mostly-node","owner":"MostlyJS","description":"Mostly simple way to microservices in Node.js","archived":false,"fork":false,"pushed_at":"2022-11-01T21:05:49.000Z","size":317,"stargazers_count":19,"open_issues_count":3,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-20T06:52:50.615Z","etag":null,"topics":["feathers","microservices","nat","nodejs","rest-api"],"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/MostlyJS.png","metadata":{"files":{"readme":"README.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}},"created_at":"2017-05-01T14:14:29.000Z","updated_at":"2023-11-13T02:38:06.000Z","dependencies_parsed_at":"2022-09-20T17:51:06.611Z","dependency_job_id":null,"html_url":"https://github.com/MostlyJS/mostly-node","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/MostlyJS/mostly-node","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MostlyJS%2Fmostly-node","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MostlyJS%2Fmostly-node/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MostlyJS%2Fmostly-node/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MostlyJS%2Fmostly-node/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MostlyJS","download_url":"https://codeload.github.com/MostlyJS/mostly-node/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MostlyJS%2Fmostly-node/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266631527,"owners_count":23959419,"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-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"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":["feathers","microservices","nat","nodejs","rest-api"],"created_at":"2024-11-10T21:12:58.983Z","updated_at":"2025-07-31T10:03:44.458Z","avatar_url":"https://github.com/MostlyJS.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"MostlyJS Microservice on Node.js\n================================\n\n[![Build Status](https://travis-ci.org/mostlyjs/mostly-node.svg)](https://travis-ci.org/mostlyjs/mostly-node)\n\nMostlyJS is a toolkit to develop distributed microservices in a mostly simple way. It uses [NATS](http://nats.io) as the internal communication system for both service discovery and load balancing. NATS is fast and reliable, and is able to handle millions of request per second.\n\nMostlyJS is targeting breaking current Monolith API application into small services that running on the network transparent to you without knowing where the service physical located.\n\nIt provides well integration with existing node frameworks so that you can change a few code to convert your RESTfull api into microservices.\n\n* [Express](http://www.expressjs.com) with [express-gateway](https://github.com/MostlyJS/mostly-demos)\n* [Feathers](https://feathersjs.com/) with [mostly-feathers](https://github.com/MostlyJS/mostly-feathers) and [mostly-feathers-rest](https://github.com/MostlyJS/mostly-feathers-rest)\n* [Poplarjs](https://github.com/poplarjs/poplar) with [mostly-poplarjs](https://github.com/MostlyJS/mostly-poplarjs) and [mostly-poplarjs-rest](https://github.com/MostlyJS/mostly-poplarjs-rest)\n\nIntegration with Koa and Hapi is also planned.\n\n# Documentation\n\nPlease see the [documentation site](https://mostlyjs.github.io).\n\n# Usage\n\n## Installation\n\n#### 1. Install Mostly-node and NATS driver\n```bash\nnpm install nats --save\nnpm install mostly-node --save\n```\n\n#### 2. Install and Run NATS Server\n\n[https://nats.io/documentation/tutorials/gnatsd-install](https://nats.io/documentation/tutorials/gnatsd-install)\n\n## Quick Example\n\n```javascript\nvar mostly = require('mostly-node')()\n\n// register the service\nmostly.add({ topic: 'sample', cmd: 'math' }, function (msg, done) {\n  var rate  = 0.13;\n  var total = msg.foo * (1 + rate);\n  done(null, { total: total });\n});\n\n// call the service\nmostly.act({ topic: 'sample', cmd: 'math', foo: 100 }, function (err, result) {\n  console.log(result.total);\n});\n```\n\n# License\n\nMIT","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmostlyjs%2Fmostly-node","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmostlyjs%2Fmostly-node","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmostlyjs%2Fmostly-node/lists"}