{"id":16191880,"url":"https://github.com/swordjs/sword-framework","last_synced_at":"2025-03-28T18:32:26.186Z","repository":{"id":37746228,"uuid":"454365111","full_name":"swordjs/sword-framework","owner":"swordjs","description":"A small and flexible for serverless nodejs framework 💗","archived":false,"fork":false,"pushed_at":"2023-08-01T15:50:40.000Z","size":11077,"stargazers_count":26,"open_issues_count":14,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-21T22:39:13.012Z","etag":null,"topics":["aws","cloudflare","nodejs","serverless","serverless-framework","serverless-functions","serverless-plugin","typescript","unicloud"],"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/swordjs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["1018715564"],"patreon":"seho","tidelift":"npm/@swordjs/sword-framework","custom":["https://swordjs.github.io/backend-framework-website/","https://www.yuque.com/mlgrgm/lrf0ra"]}},"created_at":"2022-02-01T11:41:40.000Z","updated_at":"2025-01-01T13:05:37.000Z","dependencies_parsed_at":"2024-10-22T22:38:24.477Z","dependency_job_id":"d968727b-32f4-4f54-ae81-f26a7f418a5e","html_url":"https://github.com/swordjs/sword-framework","commit_stats":{"total_commits":449,"total_committers":3,"mean_commits":"149.66666666666666","dds":0.08908685968819596,"last_synced_commit":"34fd7ac0e1bad01e9b82959a5ce158c613e183ec"},"previous_names":["swordcodepractice/sword-framework"],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swordjs%2Fsword-framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swordjs%2Fsword-framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swordjs%2Fsword-framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swordjs%2Fsword-framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/swordjs","download_url":"https://codeload.github.com/swordjs/sword-framework/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246080952,"owners_count":20720620,"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":["aws","cloudflare","nodejs","serverless","serverless-framework","serverless-functions","serverless-plugin","typescript","unicloud"],"created_at":"2024-10-10T08:07:11.444Z","updated_at":"2025-03-28T18:32:24.666Z","avatar_url":"https://github.com/swordjs.png","language":"TypeScript","funding_links":["https://github.com/sponsors/1018715564","https://patreon.com/seho","https://tidelift.com/funding/github/npm/@swordjs/sword-framework","https://swordjs.github.io/backend-framework-website/","https://www.yuque.com/mlgrgm/lrf0ra"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg width=\"40%\" src=\"https://static.yinzhuoei.com/typecho/2022/02/17/048881447338917/WX20220217-212200-removebg-preview.png\"/\u003e\n\u003c/p\u003e\n\n## Sword.js\n\n[中文说明](https://github.com/swordjs/sword-framework/tree/master/docs/README-CN.md) / [中文文档](https://www.yuque.com/mlgrgm/lrf0ra/af4ngt) /\n[Unicloud 平台](https://github.com/swordjs/sword-framework/tree/master/docs/READEME-DCLOUD-CN.md)\n\nThis is the first serverless framework in [sword.org](https://github.com/swordjs) for nodejs. No doubt it is fully developed based on Typescript. Except for\nframework core, have a toolkit for developer, make it easy to use same as developing common nodejs application, you can use it develop different company\nserverless application, like AWS, Dcloud, Tencent, Alibaba, etc.\n\n## Features\n\n- ❤️ Support typescript\n- 🐮 Support plugin system\n- 🕷️ Support file system routes\n- 🥷 Out of the box toolkits for developer\n- 📖 Runtime check on typescript\n- 📃 Generate markdown or openapi3.0 api documentation\n- 😍 Hooks api design\n- 🧩 Vscode-extension for develop application better.\n\n## Platforms\n\n| platform | status |\n| -------- | ------ |\n| Server   | ✅     |\n| Unicloud | ✅     |\n| Worker   | ⚠️     |\n| Alibaba  | ⚠️     |\n| Tencent  | ⚠️     |\n| AWS      | ⚠️     |\n\n## Install\n\n```bash\nnpm i @swordjs/sword-framework\n```\n\nWe highly recommend you install the CLI toolkits to global, so you can use them in your project easily.\n\n```bash\nnpm i @swordjs/sword-framework-cli -g\n```\n\n## Init template\n\nYou can use the CLI toolkit to init a new project, the template from [here](https://github.com/swordjs/sword-framework/tree/master/example)\n\n```bash\nsword init\n```\n\n## Start\n\n```bash\n\n# (server platform)\n\nnpm run dev\n\n# (unicloud platform)\n\nnpm run dev:unicloud\n\n# or\n\nnpm run build\n```\n\n## SwordJS - Vscode extension\n\n[swordjs-Vscode extension](https://marketplace.visualstudio.com/items?itemName=swordjs.framework-helper)\n\n## Why should I use sword.js ?\n\nWe hope this little framework is like a sword in your hands. it can be out of the box, and can qualified your in large part of the serverless platforms. this\nframework development level is very low, but because of nice design, the use cost is very low yet.\n\nI believe that it's useless to say more. Only after trying can we know how fragrant this framework is\n\n## Contact us (for Chinese🇨🇳)\n\n\u003cdiv style=\"display: flex;justify-content: flex-start;\"\u003e\n\n\u003cimg width=\"30%\" src=\"https://vkceyugu.cdn.bspapp.com/VKCEYUGU-c7e81452-9d28-4486-bedc-5dbf7c8386a5/6f5b6587-8efe-400f-8fcb-f277892a9854.png\" /\u003e\n\n\u003cimg width=\"32%\" src=\"https://vkceyugu.cdn.bspapp.com/VKCEYUGU-c7e81452-9d28-4486-bedc-5dbf7c8386a5/309debe7-7f2a-47ae-a415-875e5b1f4922.jpg\"\u003e\u003c/img\u003e\n\n\u003c/div\u003e\n\n## Friend open source project\n\n\u003ctable\u003e\u003ctbody\u003e\n      \u003ctr\u003e\u003ctd style=\"text-align: center;\"\u003e\u003ca target=\"_blank\" href=\"https://ext.dcloud.net.cn/plugin?id=271\"\u003e\u003cimg width=\"80px\" style=\"margin-top: 15px;\" src=\"https://vkceyugu.cdn.bspapp.com/VKCEYUGU-c7e81452-9d28-4486-bedc-5dbf7c8386a5/7ede4b51-1574-49b9-a84d-0ad8b8bf65a8.jpeg\"\u003e\u003c/a\u003e\n      \u003cp style=\"font-size: 14px;\"\u003eucharts\u003c/p\u003e\n      \u003c/td\u003e\n\u003c/tr\u003e\u003c/tbody\u003e\n\u003c/table\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswordjs%2Fsword-framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswordjs%2Fsword-framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswordjs%2Fsword-framework/lists"}