RAIQL COMPILER
Playground
Edit a RAIQL specification and inspect the normalized intermediate representation, compiler diagnostics and generated scaffold.
Valid specification
{
"language": "RAIQL",
"version": "0.2",
"application": {
"name": "Commerce Core",
"type": "WEB"
},
"stack": {
"frontend": "NEXTJS",
"backend": "NESTJS",
"database": "POSTGRESQL"
},
"entities": [
{
"name": "Customer",
"fields": [
{
"name": "id",
"type": "UUID",
"modifiers": [
"PRIMARY"
]
},
{
"name": "email",
"type": "STRING",
"modifiers": [
"REQUIRED",
"UNIQUE"
]
}
]
},
{
"name": "Order",
"fields": [
{
"name": "id",
"type": "UUID",
"modifiers": [
"PRIMARY"
]
},
{
"name": "customerId",
"type": "UUID",
"modifiers": [
"REQUIRED"
]
},
{
"name": "total",
"type": "DECIMAL",
"modifiers": [
"REQUIRED"
]
}
]
}
],
"relationships": [
{
"fromEntity": "Order",
"fromField": "customerId",
"toEntity": "Customer",
"toField": "id"
}
],
"crud": [
"Customer",
"Order"
],
"apis": [
"Order"
],
"authentication": [
"JWT"
],
"roles": [
"ADMIN",
"USER"
],
"permissions": [
{
"role": "ADMIN",
"action": "CREATE",
"target": "Order"
},
{
"role": "ADMIN",
"action": "READ",
"target": "Order"
},
{
"role": "ADMIN",
"action": "UPDATE",
"target": "Order"
},
{
"role": "ADMIN",
"action": "DELETE",
"target": "Order"
},
{
"role": "USER",
"action": "READ",
"target": "Order"
}
],
"actions": [
"GENERATE_TESTS",
"BUILD",
"DEPLOY_DOCKER"
]
}