This repository has been archived by the owner on Jun 1, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
hotfix: Revert 524 fix/beagle helpers page (#612) #613
Merged
Merged
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -13,43 +13,43 @@ Beagle is an open source framework of cross-platform development, it is based on | |||||
|
||||||
## How does Beagle work? | ||||||
|
||||||
The developer declares the backend screens and the exposed endpoints that represent them. These endpoints are called using Beagle, to render the screen components on the web or mobile. | ||||||
The developer declares the backend screens and the expose the endpoints that represent them. These endpoints are called using Beagle to render the screen components on the web or mobile. | ||||||
|
||||||
Beagle works as a 'bridge' between front and backend, and it is possible for the design components of your application to have a parameter in the backend, making a native application possible. | ||||||
Beagle works as a 'bridge' between front and backend, it is possible that the design components of your application have a parameter in backend which makes a native application possible. | ||||||
|
||||||
## My application's architecture will change if I use Beagle? | ||||||
|
||||||
No, Beagle does not interfere with your project's architecture. | ||||||
|
||||||
## Why should I use Beagle and not React Native or Flutter? | ||||||
## Why should I use Beagle and not React Native or Flutter? | ||||||
|
||||||
Beagle's solution is different from other technologies. Beagle is a tool that makes mobile and web app development easier, and it has a UI oriented concept of continuous delivery. Through a backend project, Beagle also allows you to implement native components and change its layout. | ||||||
Beagle's solution is different from other tecnologies. It is a tool to make the development easier, it has UI oriented concept of continuous delivery. Beagle allows you to handle through backend, native components of your application, change layouts and the display of these components. | ||||||
|
||||||
## Is it possible to make tests in server driven screens? | ||||||
## Is it possible to make tests in server driven screens? | ||||||
|
||||||
Yes! Unit tests, like instrumented tests, work the same way on Beagle. | ||||||
Yes! Unit tests like instrumented test work the same way on Beagle. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
|
||||||
## Can I use Beagle in an application that already has developed resources? | ||||||
## Can I use Beagle in an application that already has developed resources? | ||||||
|
||||||
Yes! If your application already has the developed components in a design system, you are able to use them on Beagle. You only have to see if these components are defined and then it will be easy to register them on Beagle. | ||||||
Yes! If your application already have the developed components in a design system, you are able to use them on Beagle. You only have to see if these components are defined and then it will be easy to register them on Beagle. | ||||||
|
||||||
## Does a Beagle application need to be 100% Server Driven? | ||||||
## Does a Beagle application need to be 100% Server Driven? | ||||||
|
||||||
No, the application can use only one Server Driven screen in some app's flows. You can continue in one server driven flow or return to the native screen normally. | ||||||
No, the application can use only one Server Driven screen in some app's flows. You can continue in one server driven flow or return to the native screen normally. | ||||||
|
||||||
## Do I have to use Beagle in the whole application? | ||||||
## Do I have to use Beagle in the whole application? | ||||||
|
||||||
No, your application will continue the same and it can be native even with Beagle on it. You may use Beagle whenever you want. | ||||||
|
||||||
## Will my application work offline? | ||||||
## Will my application work offline? | ||||||
|
||||||
It depends. All server driven applications, when requesting the server in a flow, will need to be connected in order to receive a response from backend. The server driven flows cannot be solved without a connection. But, if your application is not 100% server driven, then there is a part of it that doesn't need to get online information, and then it will work. The application also can be configured to call other screens in case they are offline. | ||||||
Depends. All server driven application when requests the server a flow, it needs to be connected in order to receive a response from backend. The server driven flows cannot be solved without a connection. But, your if your application is not 100% server driven, there is a part of it that doesn't need to get online information, then it will work. The application also can be configured to call other screens in case they are offline. | ||||||
|
||||||
### What If my internet connection is interrupted in the middle of the application flow? | ||||||
### If my my internet connection is interrupted in the middle of the application flow? | ||||||
|
||||||
The way to deal with disconnection cases is to create local declaratives screens to `fallback`. | ||||||
The way to deal with disconnection cases is to create local declaratives screens to `fallback`. | ||||||
|
||||||
## Will I have problems to upload an application with Beagle on App Store or Play Store? | ||||||
## Will I have problems to upload an application with Beagle on App Store or Play Store? | ||||||
|
||||||
No! All the components used will be defined in your application when the store's upload happens. Beagle is dynamic when dealing with updates, this happens because the work is in the backend and there isn't any frontend configuration that is big enough to cause a block on Apple or Google. Beagles wants to minimize the `deploys` on the stores. | ||||||
|
||||||
|
@@ -59,7 +59,8 @@ Not, it's the quite opposite. We made a renderization `benchmark` and Beagle - u | |||||
|
||||||
## How about backend's answer time? Will my application be slower? | ||||||
|
||||||
No, because Beagle uses a **cache mechanism** to store adjacent screens and, then, optimize backend's calls. This means that you don't need to request again to backend in the user's click moment. | ||||||
No, because Beagle uses a **cache mechanism** to store adjacent screens and, then, optimize backend's calls. This means that you don't need to request again to backend in the user's click moment. | ||||||
|
||||||
|
||||||
Beagle's latest version is:undefined | ||||||
|
||||||
|
@@ -69,42 +70,42 @@ Yeas! Beagle is an **open source development framework**, which means that its t | |||||
|
||||||
## **Can I create a BFF with a different language than JVM?** | ||||||
|
||||||
It's possible to create a BFF in a different language. However, we don't have ready `libs` to help you on this process, so it would be necessary that the developer create a mechanism that respects Beagle's contracts. | ||||||
It's possible to create a BFF in a different language. However, we don't have ready `libs` to help you on this process, so it would be necessary that the developer create a mechanism to respect Beagle's contracts. | ||||||
|
||||||
## What are the advantages of using Beagle? | ||||||
|
||||||
One of the main advantages is that Beagles facilitates the development because of backend's configuration based on [**BFF paradigm.**]({{< ref path="/key-concepts#backend-for-frontend" lang="en" >}}) | ||||||
|
||||||
This means that Beagle helps you on changing screen's `layouts`, screen's flows and app's navigation. All of this is made from pages declaratively created in your BFF with a components' library defined on your application's frontend, which helps on interface's change. | ||||||
This means that Beagle helps you on changing screen's `layouts`, screen's flows and app's navigation. All of this is made from pages declaratively created in your BFF with a components' library defined on your application's frontend, which helps on interface's change. | ||||||
|
||||||
It allows you to: | ||||||
It allows you to: | ||||||
|
||||||
- Decide which visual component must be presented: which texts, subtitles and any other visual information that must be shown, centralized and abstracted on the server. | ||||||
* Decide which visual component must be presented: which texts, subtitles and any other visual information that must be shown, centralized and abstracted on the server. | ||||||
|
||||||
This avoids a replication on each frontend's platform that consumes this API. The server applies this business logic and use its results to assemble the API response representing it. | ||||||
This avoids a replication on each frontend's platform that consumes this API. The server applies this business logic and use its results to assemble the API response representing it. | ||||||
|
||||||
- Make A/B tests to change the order how components are presented. | ||||||
* Make A/B tests to change the order how components are presented. | ||||||
|
||||||
## Can I use Beagle for Android, iOs or Web development? | ||||||
## Can I use Beagle for Android, iOs or Web development? | ||||||
|
||||||
Yes! As a cross-platform framework, Beagle helps you on developing application on these three platforms by using the [**Server-Driven UI concept**]({{< ref path="/key-concepts#server-driven-ui" lang="en" >}}), which enables that even a BFF may be used on all of these applications. | ||||||
Yes! As a cross-platform framework, Beagle helps you on developing application on these three platforms by using the [**Server-Driven UI concept**]({{< ref path="/key-concepts#server-driven-ui" lang="en" >}}), which enables that even a BFF may be used on all of these applications. | ||||||
|
||||||
You can see more how to create Beagle's projects with each of these platforms on: | ||||||
You can see more how to create Beagle's projects with each of these platforms on: | ||||||
|
||||||
- [**Beagle for Android**]({{< ref path="/get-started/creating-a-project-from-scratch/case-android/" lang="en" >}}) | ||||||
- [**Beagle for iOS**]({{< ref path="/get-started/creating-a-project-from-scratch/case-ios/" lang="en" >}}) | ||||||
- [**Beagle for Web**]({{< ref path="/get-started/creating-a-project-from-scratch/case-web" lang="en" >}}) | ||||||
* [**Beagle for Android**]({{< ref path="/get-started/creating-a-project-from-scratch/case-android/" lang="en" >}}) | ||||||
* [**Beagle for iOS**]({{< ref path="/get-started/creating-a-project-from-scratch/case-ios/" lang="en" >}}) | ||||||
* [**Beagle for Web**]({{< ref path="/get-started/creating-a-project-from-scratch/case-web" lang="en" >}}) | ||||||
|
||||||
## How to make unitary and instrumented tests on server-driven screens? | ||||||
|
||||||
Beagle doesn't interfere in unitary or instrumented tests, so they can be normally done. | ||||||
|
||||||
## How to make unitary tests using Beagle? | ||||||
|
||||||
Unitary tests has the goal to gauge the code's functionality in a minor fraction. The applications' tests that use Beagle are done in the same way as in applications that don't use our tool. That means Beagle doesn't interfere in these tests. | ||||||
Unitary tests has the goal to gauge the code's functionality in a minor fraction. The applications' tests that use Beagle are done in the same way as in applications that don't use our tool. That means Beagle doesn't interfere in these tests. | ||||||
|
||||||
### How to make instrumented tests using Beagle? | ||||||
|
||||||
Instrumented tests are done in applications using Beagle in the same way as in applications that don't use our tool. | ||||||
Instrumented tests are done in applications using Beagle in the same way as in applications that don't use our tool. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
luismaximozup marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
|
||||||
However, it's important to reinforce that, usually, a server-driven component may not contain an ID that mostly identifies an instrumented test. Thinking of it, we add a `WIDGET` element \(that refers a component\) and an `ID attribute` so it can be possible to programatically identify it. |
107 changes: 0 additions & 107 deletions
107
content/en/get-started/using-beagle-helpers/android/beagle-grpc.md
This file was deleted.
Oops, something went wrong.
35 changes: 35 additions & 0 deletions
35
content/en/get-started/using-beagle-helpers/android/overview.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
--- | ||
title: Overview | ||
weight: 1 | ||
type: overview | ||
description: 'Here you will find a library to help when you want to start a project using beagle for Android. These libs will facilitate the initial Beagle configuration in a project, avoiding some steps, and starting studies quicker.' | ||
--- | ||
|
||
--- | ||
|
||
![Maven Central](https://img.shields.io/maven-central/v/br.com.zup.beagle/beagle-scaffold?color=green&label=Beagle-Scaffold) | ||
![Maven Central](https://img.shields.io/maven-central/v/br.com.zup.beagle/beagle-defaults?color=green&label=Beagle-Defaults) | ||
![Maven Central](https://img.shields.io/maven-central/v/br.com.zup.beagle/android?label=Beagle) | ||
|
||
<hr> | ||
|
||
### Getting started | ||
|
||
To start using Beagle right now, you can use the libs below: | ||
* [Beagle-Scaffold]({{< ref path="/get-started/using-beagle-helpers/android/beagle-scaffold" lang="en" >}}): | ||
This lib will hold almost all configurations needed to start using Beagle in your project. | ||
We advise the use of these libs for people that never used Beagle before. | ||
|
||
* [Beagle-Defaults]({{< ref path="/get-started/using-beagle-helpers/android/beagle-defaults" lang="en" >}}): | ||
This lib is advised for more experienced Beagle users and | ||
will hold only a few class configurations necessary to | ||
use Beagle in an application. These configurations include | ||
default HttpClient, Logger and Cache classes.<br> | ||
All these are also available in the Scaffold lib above. | ||
|
||
|
||
{{% alert color="warning" %}} | ||
If you wish to use Beagle for an application in production we advise you to configure a project | ||
from scratch using our | ||
[**documentation**]({{< ref path="/get-started/creating-a-project-from-scratch/case-android/" lang="en" >}}) | ||
{{% /alert %}} |
6 changes: 0 additions & 6 deletions
6
content/en/get-started/using-beagle-helpers/backend/_index.md
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.