diff --git a/components/bff/code/Code.js b/components/bff/code/Code.js index a6f0a03947e..3bb17d5f7a1 100644 --- a/components/bff/code/Code.js +++ b/components/bff/code/Code.js @@ -49,7 +49,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'rest-support')} + onClick={(e) => props.getLink(e.target, 'simplify-back-end-development-with-native-rest-features')} > @@ -115,7 +115,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'rest-business-apps')} + onClick={(e) => props.getLink(e.target, 'streamline-back-end-data-handling')} > @@ -180,7 +180,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'rest-business-apps')} + onClick={(e) => props.getLink(e.target, 'validate-payload-constraints-in-web-back-ends')} > @@ -245,7 +245,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'rest-transform')} + onClick={(e) => props.getLink(e.target, 'efficiently-expose-complex-data-with-graphql')} > @@ -311,7 +311,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'powerful-data-mapping')} + onClick={(e) => props.getLink(e.target, 'expose-real-time-data-to-front-ends-via-websockets')} > @@ -377,7 +377,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'ballerina-is-serverAuth')} + onClick={(e) => props.getLink(e.target, 'simplify-user-authentications-and-authorizations')} > @@ -443,7 +443,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'security')} + onClick={(e) => props.getLink(e.target, 'comprehensive-security-for-web-back-ends')} > @@ -508,7 +508,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'custom-rest')} + onClick={(e) => props.getLink(e.target, 'securely-interact-with-internal-external-services')} > @@ -573,7 +573,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'apis-are-new-dll')} + onClick={(e) => props.getLink(e.target, 'automate-data-access-with-ballerina')} > @@ -635,7 +635,7 @@ export default function UseCases(props) { -

+

props.getLink(e.target, 'apis-are-new-dll')} + onClick={(e) => props.getLink(e.target, 'develop-flexible-scalable-back-ends')} > diff --git a/components/bff/code/bff-bbe/client-auth.md b/components/bff/code/bff-bbe/client-auth.md index bf6af66f628..bee10c74983 100644 --- a/components/bff/code/bff-bbe/client-auth.md +++ b/components/bff/code/bff-bbe/client-auth.md @@ -1,7 +1,7 @@ --- title: 'Securely interact with internal/external services' description: Ballerina back-ends can securely call services with the necessary security features such as client-side OAuth2, mutual TLS, and JWT-encapsulated user data. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/microservices' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/securely_consume_services_from_backends' --- ``` service /logistics on new http:Listener(9090) { diff --git a/components/bff/code/bff-bbe/constraint-validation.md b/components/bff/code/bff-bbe/constraint-validation.md index 9f9383b3ff1..c05f637b881 100644 --- a/components/bff/code/bff-bbe/constraint-validation.md +++ b/components/bff/code/bff-bbe/constraint-validation.md @@ -1,7 +1,7 @@ --- title: 'Validate payload constraints in web back-ends' description: Ballerina's inherent JSON capabilities enable the direct mapping of JSON data into Ballerina records, incorporating functionalities such as constraint validations. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/constraint_validation' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/validate_payloads_constraints_in_web_backends' --- ``` type Order record {| diff --git a/components/bff/code/bff-bbe/graphql.md b/components/bff/code/bff-bbe/graphql.md index d8f6a8c8f7e..83e4b0c9c9a 100644 --- a/components/bff/code/bff-bbe/graphql.md +++ b/components/bff/code/bff-bbe/graphql.md @@ -1,7 +1,7 @@ --- title: 'Efficiently expose complex data with GraphQL' description: With Ballerina's built-in GraphQL functionality, developers can simply expose Ballerina records via GraphQL services, facilitating querying and selectively fetching complex data structures. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/graphql' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/expose_complex_data_with_graphql' --- ``` type Order record {| diff --git a/components/bff/code/bff-bbe/json-support.md b/components/bff/code/bff-bbe/json-support.md index 51226d0efdb..9038a72359a 100644 --- a/components/bff/code/bff-bbe/json-support.md +++ b/components/bff/code/bff-bbe/json-support.md @@ -1,7 +1,7 @@ --- title: 'Streamline back-end data handling' description: Ballerina has built-in support for multi-part payloads, constraint validations, transformations, and, enrichments for working with complex payloads. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/payload_support' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/handle-mulipart-form-data' --- ``` service /crm on new http:Listener(9090) { diff --git a/components/bff/code/bff-bbe/persist.md b/components/bff/code/bff-bbe/persist.md index e53ae07af81..e957e0b82d9 100644 --- a/components/bff/code/bff-bbe/persist.md +++ b/components/bff/code/bff-bbe/persist.md @@ -1,7 +1,7 @@ --- title: 'Automate data access with Ballerina' description: Ballerina's persistence features offer a straightforward way to create a data access layer for any complex application by providing a simplified interface for CRUD operations. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/persists' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/persistently-store-data-using-Ballerina' --- ``` Client dbClient = check new (); diff --git a/components/bff/code/bff-bbe/rest-support.md b/components/bff/code/bff-bbe/rest-support.md index 349a3ddcd48..f3102935016 100644 --- a/components/bff/code/bff-bbe/rest-support.md +++ b/components/bff/code/bff-bbe/rest-support.md @@ -1,7 +1,7 @@ --- title: 'Simplify back-end development with native REST features' description: Ballerina provides REST features like path/query parameters, HTTP headers, status codes, and complex JSON structures as first-class citizens within the language itself. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/rest' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/restful-order-service' --- ``` service /sales on new http:Listener(9090) { diff --git a/components/bff/code/bff-bbe/security.md b/components/bff/code/bff-bbe/security.md index 446f84cd7a2..142a771ea80 100644 --- a/components/bff/code/bff-bbe/security.md +++ b/components/bff/code/bff-bbe/security.md @@ -1,7 +1,7 @@ --- title: "Comprehensive security for web back-ends" description: Ballerina-based back-ends can simplify securing sensitive data during transit, validating server identity, managing CORS, and enforcing message type restrictions via annotations. -url: 'hhttps://github.com/SasinduDilshara/BFF-Samples/tree/dev/comprehensive_security' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/comprehensive-security-for-web-backends' --- ``` @http:ServiceConfig { diff --git a/components/bff/code/bff-bbe/server-auth.md b/components/bff/code/bff-bbe/server-auth.md index 33a06388a21..8efa058717d 100644 --- a/components/bff/code/bff-bbe/server-auth.md +++ b/components/bff/code/bff-bbe/server-auth.md @@ -1,7 +1,7 @@ --- title: 'Simplify user authentications and authorizations' description: Ballerina apps can be seamlessly integrated with any OAuth2-compatible identity provider using a simple set of annotations. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/rest_with_asgardeo' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/connect_with_asgardeo_for_building_secure_services' --- ``` @http:ServiceConfig { diff --git a/components/bff/code/bff-bbe/websockets.md b/components/bff/code/bff-bbe/websockets.md index de4a3b9b0b6..0f86f4337e4 100644 --- a/components/bff/code/bff-bbe/websockets.md +++ b/components/bff/code/bff-bbe/websockets.md @@ -1,7 +1,7 @@ --- title: 'Expose real-time data to front-ends via webSockets' description: Ballerina allows real-time data to be streamed just by implementing a service. This comes with enterprise-ready security features like TLS, mutual TLS, and OAuth2. -url: 'https://github.com/SasinduDilshara/BFF-Samples/tree/dev/websocket' +url: 'https://github.com/ballerina-guides/bff-samples/tree/main/exposing-realtime-data-using-websockets' --- ``` service /logistics on new websocket:Listener(9091) { diff --git a/pages/usecases/bff/index.js b/pages/usecases/bff/index.js index da7d87e672f..0628e8ef22f 100644 --- a/pages/usecases/bff/index.js +++ b/pages/usecases/bff/index.js @@ -104,11 +104,11 @@ export default function Integrations({ samples }) { content="ballerina, learn, documentation, docs, programming language" /> - Ballerina for implementing backends for modern front-ends + Ballerina for implementing backends for modern front-ends - The Ballerina programming language {/* FB */} - + {/* LINKED IN */} - + - + diff --git a/public/images/bff-intro.png b/public/images/bff-intro.png index 92a20b11e34..a718babe113 100644 Binary files a/public/images/bff-intro.png and b/public/images/bff-intro.png differ