The Progressive Meta Framework for API Development
Streamline your backend workflow using UtilMeta's declarative power
pip install utilmeta
What you define is
What you get
Declarative API & ORM, clear and efficient
Easy to use, easy to read
Auto validate request
Auto generate OpenAPI docs
python
from utilmeta.core import api, orm
from django.db import models
from .models import User, Article
class UserSchema(orm.Schema[User]):
username: str
articles_num: int = models.Count('articles')
class ArticleSchema(orm.Schema[Article]):
id: int
author: UserSchema
content: str
class ArticleAPI(api.API):
async def get(self, id: int) -> ArticleSchema:
return await ArticleSchema.ainit(id)
GET
/article?id=1 200
json
{
"id": 1,
"author": {
"username": "alice",
"articles_num": 3
},
"content": "hello world"
}
QUERY PARAMETERS
- id *
integer
RESPONSE application/json
- id
integer
- author
object
- username
string
- articles_num
integer
- content
string
Starlette
python
from utilmeta import UtilMeta
from utilmeta.core import api
from config import configure
import starlette
service = UtilMeta(
__name__,
name='blog',
backend=starlette,
)
configure(service)
from blog.api import ArticleAPI
@service.mount
class RootAPI(api.API):
article: ArticleAPI
app = service.application() # wsgi / asgi
if __name__ == '__main__':
service.run()
Integrate your favorite backend
UtilMeta can use any mainstream python framework as runtime backend, you can also integrate UtilMeta API from you current project progressively
Full-lifecycle
DevOps solution
Monitor everything crucial
to your application instantaneously
Start your journey here
Quick Start
INSTALLATION
pip install utilmeta
CREATE PROJECT
meta setup
RUN SERVICE
meta run
CONNECT API
meta connect
Features Guide
Handle Request
parse path, query, body, headers and cookies
API Routing
use API class to define tree-like routes
Declarative Query
use declarative ORM to build RESTful APIs
Declarative Web Client
build & generate declarative Client code
Authentication
auth APIs and user using Session / JWT / OAuth
Config & Run
how to config and run a UtilMeta service
Migration
migrate from current python project progressively
Connect & Operations
Connect and manage your API services