Fast NodeJS API framework with TypeScript : ACL, validation and serialization, Swagger.json generation ...
Explore the docs »
- About the Project
- Built With
- Getting Started
- Usage
- Roadmap
- Contributing
- License
- Authors
- Acknowledgements
Stop losing time on your APIs. You usually manages your routes somewhere, your methods somewhere else, your documentation at another location ... Each code update makes you go everywhere, for nothing.
This framework focuses on keeping you work at only one location : your controllers. With TypeScript
decorators, you can easily decorate your controllers, methods to configure everything you need about an API endpoint :
- Method
- Route
- API version
- Title
- Description
- Restrict access
- Filter user input
- Filter sent data
With this configuration, SwarmJS runs a HTTP server (working with Fastify
, so it's fast !), monitors performance and generates automatically swagger.json
file to share documentation with others.
- TypeScript@4
- Fastify@4
To use SwarmJS, you need to use either TypeScript
or Babel
with @babel/plugin-proposal-decorators
plugin.
yarn add @swarmjs/core
or
npm install --save @swarmjs/core
Please refer to the documentation to Get Started
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- If you have suggestions for adding or removing projects, feel free to open an issue to discuss it, or directly create a pull request after you edit the README.md file with necessary changes.
- Please make sure you check your spelling and grammar.
- Create individual PR for each suggestion.
- Please also read through the Code Of Conduct before posting your first idea as well.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.