GitHub - caicloud/nirvana: Golang Restful API Framework for Productivity
source link: https://github.com/caicloud/nirvana
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
Nirvana
Nirvana is a golang API framework designed for productivity and usability. It aims to be the building block for all golang services at Caicloud. The high-level goals and features include:
- consistent API behavior, structure and layout across all golang projects
- improve engineering productivity with openAPI and client generation, etc
- validation can be added by declaring validation method as part of API definition
- out-of-box instrumentation support, e.g. metrics, profiling, tracing, etc
- easy and standard configuration management, as well as standard cli interface
Nirvana is also extensible and performant, with the goal to support fast developmenet velocity.
Getting Started
Nirvana provides documentations in two languages to help you expore this framework. Note right now, only Chinese docs are kept up-to-date.
Features
- API Framework based on Descriptors
- Request Filter
- Middleware
- Validator
- Plugins
- API Doc Generation
- Client Generation
Contributing
If you are interested in contributing to Nirvana, please checkout CONTRIBUTING.md. We welcome any code or non-code contribution!
Licensing
Nirvana is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK