{"action":"created","comment":{"url":"https://api.github.com/repos/flutter-es/website/pulls/comments/209438108","pull_request_review_id":145457723,"id":209438108,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwOTQzODEwOA==","diff_hunk":"@@ -0,0 +1,799 @@\n+---\n+layout: page\n+title: Un Recorrido por el Framework de Widgets Flutter\n+permalink: /widgets-intro/\n+---\n+\n+* TOC Placeholder\n+{:toc}\n+\n+## Introducción\n+\n+Widgets en Flutter son construidos usando un moderno framework de estilo-reactivo, el cual toma\n+inspiración de [React](http://facebook.github.io/react/). La idea central es\n+que construyas tu UI de widgets. Los Widgets describen cómo debería ser su vista,\n+dada su configuración y estado actuales. Cuando el estado de un widget cambia,\n+el widget reconstruye su descripción, que el framework difiere de la descripción\n+anterior para determinar los cambios mínimos necesarios en el árbol de renderizado\n+subyacente para la transición de un estado al siguiente.\n+\n+<aside id=\"note\" class=\"alert alert-info\" markdown=\"1\">\n+**Nota:** Si quieres conocer mejor a Flutter sumergiéndote en algún código,\n+echa un vistazo a\n+[Construcción de diseños en Flutter](/tutorials/layout/) y\n+[Agregar interactividad a su aplicación Flutter](/tutorials/interactive/).\n+</aside>\n+\n+Hola Mundo\n+-----------\n+\n+La aplicación mínima de Flutter simplemente llama a la función\n+[`runApp`](https://docs.flutter.io/flutter/widgets/runApp.html)\n+con un widget\n+\n+```dart\n+import 'package:flutter/material.dart';\n+\n+void main() {\n+  runApp(\n+    Center(\n+      child: Text(\n+        'Hola, mundo!',\n+        textDirection: TextDirection.ltr,\n+      ),\n+    ),\n+  );\n+}\n+```\n+\n+La función [`runApp`](https://docs.flutter.io/flutter/widgets/runApp.html)\n+toma el\n+[`Widget`](https://docs.flutter.io/flutter/widgets/Widget-class.html) dado y\n+lo convierte en la raíz del árbol de widgets. En este ejemplo, el árbol de widgets consiste\n+de dos widgets, el widget\n+[`Center`](https://docs.flutter.io/flutter/widgets/Center-class.html)\n+y su hijo, el widget\n+[`Text`](https://docs.flutter.io/flutter/widgets/Text-class.html).\n+El framework obliga al widget raíz a cubrir la pantalla, lo que significa que el texto\n+\"Hola, mundo\" termina centrado en la pantalla. La dirección del texto debe\n+especificarse en esta instancia; cuando se usa el widget MaterialApp,\n+este lo hace por usted, como se demuestra mas adelante.\n+\n+Al escribir una aplicación, comúnmente creará nuevos widgets que son subclases de\n+ya sea\n+[`StatelessWidget`](https://docs.flutter.io/flutter/widgets/StatelessWidget-class.html)\n+o\n+[`StatefulWidget`](https://docs.flutter.io/flutter/widgets/StatefulWidget-class.html),\n+dependiendo de si su widget gestiona algún estado. El trabajo principal de un widget es\n+implementar una función de construcción\n+[`build`](https://docs.flutter.io/flutter/widgets/StatelessWidget/build.html)\n+, que describe el widget en términos de otros widgets de nivel inferior.\n+El framework construye esos widgets a su vez hasta que el proceso llega al fondo\n+en widgets que representan el subyacente [`RenderObject`](https://docs.flutter.io/flutter/rendering/RenderObject-class.html), que calcula y describe la geometría del widget.\n+\n+Widgets básicos\n+---------------\n+\n+_Artículo principal : [Descripción general de los widgets - Modelos de diseño](https://flutter.io/widgets/layout)_\n+\n+Flutter viene con un conjunto de potentes widgets básicos, de los cuales los siguientes\n+son de uso muy común:\n+\n+ * [`Text`](https://docs.flutter.io/flutter/widgets/Text-class.html): El widget\n+   [`Text`](https://docs.flutter.io/flutter/widgets/Text-class.html)\n+   le permite crear una ejecución de texto con estilo dentro de su aplicación.\n+\n+ * [`Row`](https://docs.flutter.io/flutter/widgets/Row-class.html),\n+   [`Column`](https://docs.flutter.io/flutter/widgets/Column-class.html):\n+   Estos widgets flexibles le permiten crear diseños flexibles tanto en la\n+   dirección horizontal\n+   ([`Row`](https://docs.flutter.io/flutter/widgets/Row-class.html)) como\n+   en la vertical.\n+   ([`Column`](https://docs.flutter.io/flutter/widgets/Column-class.html))\n+   Su diseño se basa en el modelo de diseño flexbox de la web.\n+\n+ * [`Stack`](https://docs.flutter.io/flutter/widgets/Stack-class.html):\n+   En lugar de estar orientados linealmente (ya sea horizontal o verticalmente), un widget\n+   [`Stack`](https://docs.flutter.io/flutter/widgets/Stack-class.html)\n+   le permite apilar los widgets uno encima del otro en el orden como se pintan.\n+   A continuación, puede utilizar el widget\n+   [`Positioned`](https://docs.flutter.io/flutter/widgets/Positioned-class.html)\n+   sobre los hijos de un\n+   [`Stack`](https://docs.flutter.io/flutter/widgets/Stack-class.html) para\n+   posicionarlos en relación con el borde superior, derecho, inferior o izquierdo del stack.\n+   Los Stacks se basan en el modelo de diseño de posicionamiento absoluto en la web.\n+\n+ * [`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html):\n+   El widget [`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html)\n+   le permite crear elementos visuales rectangulares. Un contenedor puede ser\n+   decorado con un\n+   [`BoxDecoration`](https://docs.flutter.io/flutter/painting/BoxDecoration-class.html),\n+   como un fondo, un borde o una sombra. Un\n+   [`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html)\n+   también puede tener márgenes, relleno interno y restricciones aplicadas a su tamaño.\n+   Además, un\n+   [`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html)\n+   puede transformarse en un espacio tridimensional utilizando una matriz.\n+\n+A continuación se presentan algunos widgets simples que combinan estos y otros widgets:\n+\n+```dart\n+import 'package:flutter/material.dart';\n+\n+class MyAppBar extends StatelessWidget {\n+  MyAppBar({this.title});\n+\n+  // Los campos en una subclase de Widgets siempre están marcados como \"final\".\n+\n+  final Widget title;\n+\n+  @override\n+  Widget build(BuildContext context) {\n+    return Container(\n+      height: 56.0, // en píxeles lógicos\n+      padding: const EdgeInsets.symmetric(horizontal: 8.0),\n+      decoration: BoxDecoration(color: Colors.blue[500]),\n+      // Row es un diseño horizontal y lineal.\n+      child: Row(\n+        // <Widget> es el tipo de artículos en la lista.\n+        children: <Widget>[\n+          IconButton(\n+            icon: Icon(Icons.menu),\n+            tooltip: 'Navigation menu',\n+            onPressed: null, // null desactiva el botón\n+          ),\n+          // Expanded expande a su hijo para rellenar el espacio disponible.\n+          Expanded(\n+            child: title,\n+          ),\n+          IconButton(\n+            icon: Icon(Icons.search),\n+            tooltip: 'Search',\n+            onPressed: null,\n+          ),\n+        ],\n+      ),\n+    );\n+  }\n+}\n+\n+class MyScaffold extends StatelessWidget {\n+  @override\n+  Widget build(BuildContext context) {\n+    // Material es una hoja de papel conceptual en la que aparece la IU.\n+    return Material(\n+      // Column es un diseño vertical y lineal.\n+      child: Column(\n+        children: <Widget>[\n+          MyAppBar(\n+            title: Text(\n+              'Example title',\n+              style: Theme.of(context).primaryTextTheme.title,\n+            ),\n+          ),\n+          Expanded(\n+            child: Center(\n+              child: Text('Hello, world!'),\n+            ),\n+          ),\n+        ],\n+      ),\n+    );\n+  }\n+}\n+\n+void main() {\n+  runApp(MaterialApp(\n+    title: 'My app', // utilizado por el conmutador de tareas del sistema operativo\n+    home: MyScaffold(),\n+  ));\n+}\n+```\n+\n+Asegúrese de tener una entrada `uses-material-design: true` en la sección `flutter`\n+de su archivo `pubspec.yaml`. Permite utilizar el conjunto predefinido de\n+[Iconos de Material](https://design.google.com/icons/).\n+\n+```yaml\n+name: my_app\n+flutter:\n+  uses-material-design: true\n+```\n+\n+Muchos widgets necesitan estar dentro de un\n+[`MaterialApp`](https://docs.flutter.io/flutter/material/MaterialApp-class.html)\n+parar mostrarse correctamente, con el fin de heredar los datos del tema. Por lo tanto,\n+ejecutamos la aplicación con un\n+[`MaterialApp`](https://docs.flutter.io/flutter/material/MaterialApp-class.html).\n+\n+El widget `MyAppBar` crea un\n+[`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html)\n+con una altura de 56 píxeles independientes del dispositivo con un relleno interno de 8 píxeles, tanto a la izquierda como a la derecha. Dentro del contenedor, `MyAppBar` usa una\n+estructura [`Row`](https://docs.flutter.io/flutter/widgets/Row-class.html) para\n+organizar sus hijos. El hijo del medio, el widget `title`, se marca como\n+[`Expanded`](https://docs.flutter.io/flutter/widgets/Expanded-class.html),\n+lo que significa que se expande para rellenar cualquier espacio disponible\n+que no haya sido consumido por los otros widgets hijos. Usted puede tener múltiples\n+[`Expanded`](https://docs.flutter.io/flutter/widgets/Expanded-class.html)\n+hijos y determinar la proporción en la que consumen el espacio disponible utilizando\n+el argumento\n+[`flex`](https://docs.flutter.io/flutter/widgets/Expanded-class.html#flex)\n+para\n+[`Expanded`](https://docs.flutter.io/flutter/widgets/Expanded-class.html).\n+\n+El widget `MyScaffold` organiza a sus hijos en una columna vertical. En la\n+parte superior de la columna se coloca una instancia de `MyAppBar`, pasando la barra\n+de aplicaciones un widget [`Text`](https://docs.flutter.io/flutter/widgets/Text-class.html)\n+para usar como título. Pasar widgets como argumentos a widgets es una técnica muy poderosa\n+que le permite crear widgets genéricos que pueden ser reutilizados en una amplia variedad\n+de formas. Finalmente, `MyScaffold` utiliza un\n+[`Expanded`](https://docs.flutter.io/flutter/widgets/Expanded-class.html) para\n+rellenar el espacio restante con su cuerpo, que consiste en un mensaje centrado.\n+\n+Utilizando Componentes Material\n+-------------------------------\n+\n+_Articulo principal: [Resumen de widgets: Componentes Material](https://flutter.io/widgets/material)_\n+\n+Flutter proporciona una serie de widgets que te ayudan a crear aplicaciones que\n+siguen el diseño Material. Una aplicación de material comienza con el widget\n+[`MaterialApp`](https://docs.flutter.io/flutter/material/MaterialApp-class.html)\n+que construye una serie de widgets en la raíz de su aplicación,\n+incluyendo un\n+[`Navigator`](https://docs.flutter.io/flutter/widgets/Navigator-class.html),\n+que gestiona una pila de widgets identificados por cadenas, también conocidas como \"rutas\".\n+El\n+[`Navigator`](https://docs.flutter.io/flutter/widgets/Navigator-class.html)\n+le permite una transición sin problemas entre pantallas de su aplicación. Utilizando el widget\n+[`MaterialApp`](https://docs.flutter.io/flutter/material/MaterialApp-class.html)\n+es totalmente opcional pero es una buena práctica.\n+\n+```dart\n+import 'package:flutter/material.dart';\n+\n+void main() {\n+  runApp(MaterialApp(\n+    title: 'Flutter Tutorial',\n+    home: TutorialHome(),\n+  ));\n+}\n+\n+class TutorialHome extends StatelessWidget {\n+  @override\n+  Widget build(BuildContext context) {\n+    // Scaffold es un diseño para los principales componentes de Material.\n+    return Scaffold(\n+      appBar: AppBar(\n+        leading: IconButton(\n+          icon: Icon(Icons.menu),\n+          tooltip: 'Menú de navegación',\n+          onPressed: null,\n+        ),\n+        title: Text('Título de ejemplo'),\n+        actions: <Widget>[\n+          IconButton(\n+            icon: Icon(Icons.search),\n+            tooltip: 'Buscar',\n+            onPressed: null,\n+          ),\n+        ],\n+      ),\n+      // es la mayor parte de la pantalla.\n+      body: Center(\n+        child: Text('Hola, mundo!'),\n+      ),\n+      floatingActionButton: FloatingActionButton(\n+        tooltip: 'Agregar', // utilizado por la tecnologías de asistencia\n+        child: Icon(Icons.add),\n+        onPressed: null,\n+      ),\n+    );\n+  }\n+}\n+```\n+\n+Ahora que hemos cambiado de `MyAppBar` y `MyScaffold` a los widgets\n+[`AppBar`](https://docs.flutter.io/flutter/material/AppBar-class.html) y\n+[`Scaffold`](https://docs.flutter.io/flutter/material/Scaffold-class.html)\n+de `material.dart`, nuestra aplicación se está empezando a mirar un poco más\n+Material. Por ejemplo, la barra de aplicaciones tiene una sombra y el texto\n+hereda automáticamente el estilo correcto. También hemos agregado un botón\n+de acción flotante para una buena medida.\n+\n+Note que estamos pasando de nuevo los widgets como argumentos a otros widgets. El widget\n+[`Scaffold`](https://docs.flutter.io/flutter/material/Scaffold-class.html)\n+toma un número de widgets diferentes como argumentos nombrados, cada uno de los cuales\n+se coloca en la disposición del Scaffold en el lugar apropiado. Del mismo modo, el widget\n+[`AppBar`](https://docs.flutter.io/flutter/material/AppBar-class.html)\n+nos permite pasar widgets para los\n+[`leading`](https://docs.flutter.io/flutter/material/AppBar-class.html#leading)\n+y los\n+[`actions`](https://docs.flutter.io/flutter/material/AppBar-class.html#actions)\n+de el widget\n+[`title`](https://docs.flutter.io/flutter/material/AppBar-class.html#title).\n+Este patrón se repite a lo largo de todo el framework y es algo que podría\n+considerar al diseñar sus propios widgets.\n+\n+Manejar gestos\n+--------------\n+\n+_Artículo principal: [Gestos en Flutter](https://flutter.io/gestures/)_\n+\n+La mayoría de las aplicaciones incluyen alguna forma de interacción del usuario\n+con el sistema. El primer paso para construir una aplicación interactiva es detectar\n+gestos de entrada. Veamos cómo funciona creando un simple botón:\n+\n+```dart\n+class MyButton extends StatelessWidget {\n+  @override\n+  Widget build(BuildContext context) {\n+    return GestureDetector(\n+      onTap: () {\n+        print('MyButton fue pulsado!');\n+      },\n+      child: Container(\n+        height: 36.0,\n+        padding: const EdgeInsets.all(8.0),\n+        margin: const EdgeInsets.symmetric(horizontal: 8.0),\n+        decoration: BoxDecoration(\n+          borderRadius: BorderRadius.circular(5.0),\n+          color: Colors.lightGreen[500],\n+        ),\n+        child: Center(\n+          child: Text('Contratar'),\n+        ),\n+      ),\n+    );\n+  }\n+}\n+```\n+\n+El widget\n+[`GestureDetector`](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html)\n+no tiene una representación visual sino que detecta los gestos realizados por el usuario.\n+Cuando el usuario pulsa en\n+[`Container`](https://docs.flutter.io/flutter/widgets/Container-class.html),\n+el\n+[`GestureDetector`](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html)\n+llama a su callback\n+[`onTap`](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html#onTap)\n+en este caso imprimiendo un mensaje a la consola. Puede utilizar\n+[`GestureDetector`](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html)\n+para detectar una variedad de gestos de entrada, incluidos taps, drags y escalas.\n+\n+Muchos widgets usan un\n+[`GestureDetector`](https://docs.flutter.io/flutter/widgets/GestureDetector-class.html)\n+para proporcionar callbacks opcionales para otros widgets. Por ejemplo, los widgets\n+[`IconButton`](https://docs.flutter.io/flutter/material/IconButton-class.html),\n+[`RaisedButton`](https://docs.flutter.io/flutter/material/RaisedButton-class.html),\n+y\n+[`FloatingActionButton`](https://docs.flutter.io/flutter/material/FloatingActionButton-class.html)\n+tienen\n+[`onPressed`](https://docs.flutter.io/flutter/material/RaisedButton-class.html#onPressed)\n+callbacks que se activan cuando el usuario toca el widget.\n+\n+Cambiar los widgets en respuesta a las entradas\n+-----------------------------------------------\n+\n+_Artítulos principales: [`StatefulWidget`](https://docs.flutter.io/flutter/widgets/StatefulWidget-class.html), [`State.setState`](https://docs.flutter.io/flutter/widgets/State/setState.html)_\n+\n+Hasta ahora, solo hemos usado widgets sin estado. Los widgets sin estado\n+reciben argumentos de su widget padre, que almacenan en variables de miembro\n+[`final`](https://www.dartlang.org/docs/dart-up-and-running/ch02.html#final-and-const).\n+Cuando se le pide a un widget que se\n+[`construya`](https://docs.flutter.io/flutter/widgets/StatelessWidget/build.html),\n+usa estos valores almacenados para derivar nuevos argumentos para los widgets que crea.\n+\n+Para construir experiencias mas complejas&mdash;por ejemplo, reaccionar de forma\n+más interesante a las aplicaciones&mdash;de entrada de usuario que típicamente llevan algún estado.\n+Flutter utiliza StatefulWidgets para capturar esta idea. StatefulWidgets son\n+widgets especiales que saben como generar objetos State, que luego se usan\n+para mantener el estado. Considera este ejemplo básico, usando el\n+[`RaisedButton`](https://docs.flutter.io/flutter/material/RaisedButton-class.html)\n+mencionado anteriormente:\n+\n+```dart\n+class Counter extends StatefulWidget {\n+  // Esta clase es la configuración para el estado. Tiene\n+  // los valores (en nada) proporcionado por el padre y utilizado por el método\n+  // de construcción del Estado. Los campos en una subclase Widget siempre se marcan como \"final\".\n+\n+  @override\n+  _CounterState createState() => _CounterState();\n+}\n+\n+class _CounterState extends State<Counter> {\n+  int _counter = 0;\n+\n+  void _increment() {\n+    setState(() {\n+      // Esta llamada a setState le dice al framework Flutter que\n+      // algo ha cambiado en este Estado, lo que hace que se vuelva a ejecutar\n+      // el método de construcción siguiente para que la pantalla pueda reflejar los\n+      // valores actualizados. Si cambiamos _counter sin llamar\n+      // setState(), entonces el método de construcción no sería llamado de nuevo,\n+      // así que no parece que pase nada.\n+      _counter++;\n+    });\n+  }\n+\n+  @override\n+  Widget build(BuildContext context) {\n+    // Este método se vuelve a ejecutar cada vez que se llama setState, por ejemplo\n+    // como se hace con el método _increment anterior.\n+    // El framework Flutter ha sido optimizado para hacer que los métodos de construcción\n+    // se vuelvan a ejecutar rápidamente, para que puedas reconstruir cualquier cosa que\n+    // necesite ser actualizada en lugar de tener que cambiar individualmente\n+    // las instancias de los widgets.\n+    return Row(\n+      children: <Widget>[\n+        RaisedButton(\n+          onPressed: _increment,\n+          child: Text('Increment'),\n+        ),\n+        Text('Count: $_counter'),\n+      ],\n+    );\n+  }\n+}\n+```\n+\n+Puede que se pregunte por qué StatefulWidget y State son objetos separados. En\n+Flutter, estos dos tipos de objetos tienen diferentes ciclos de vida. Los Widgets son\n+objetos temporales, usado para construir una presentación de la aplicación en su\n+estado actual. Por otro lado, los objetos de estado son persistentes entre llamadas a\n+[`build()`](https://docs.flutter.io/flutter/widgets/State/build.html),\n+permitiéndoles recordar información.\n+\n+El ejemplo anterior acepta la entrada del usuario y utiliza directamente el resultado\n+en su método de construcción.  En aplicaciones más complejas, diferentes partes de la jerarquía\n+de widgets podrían ser responsables de diferentes responsabilidades; por ejemplo, un\n+widget puede presentar una interfaz de usuario compleja con el objetivo de recopilar\n+información específica, como una fecha o lugar, mientras que otro widget podría\n+usar esa información para cambiar la presentación general.\n+\n+En Flutter, las notificaciones de cambio fluyen \"arriba\" en la jerarquía de widgets\n+por medio de callbacks, mientras que el estado actual fluye \"hacia abajo\" a los widgets sin\n+estado que hacen presentación. El padre común que redirige este flujo es el State. Veamos\n+cómo funciona en la práctica, con este ejemplo un poco más complejo:\n+\n+\n+```dart\n+class CounterDisplay extends StatelessWidget {\n+  CounterDisplay({this.count});\n+\n+  final int count;\n+\n+  @override\n+  Widget build(BuildContext context) {\n+    return Text('Count: $count');\n+  }\n+}\n+\n+class CounterIncrementor extends StatelessWidget {\n+  CounterIncrementor({this.onPressed});\n+\n+  final VoidCallback onPressed;\n+\n+  @override\n+  Widget build(BuildContext context) {\n+    return RaisedButton(\n+      onPressed: onPressed,\n+      child: Text('Increment'),\n+    );\n+  }\n+}\n+\n+class Counter extends StatefulWidget {\n+  @override\n+  _CounterState createState() => _CounterState();\n+}\n+\n+class _CounterState extends State<Counter> {\n+  int _counter = 0;\n+\n+  void _increment() {\n+    setState(() {\n+      ++_counter;\n+    });\n+  }\n+\n+  @override\n+  Widget build(BuildContext context) {\n+    return Row(children: <Widget>[\n+      CounterIncrementor(onPressed: _increment),\n+      CounterDisplay(count: _counter),\n+    ]);\n+  }\n+}\n+```\n+\n+Nótese cómo creamos dos nuevos widgets sin estado, separando limpiamente\n+las responsabilidades de _desplegando_ el contador (CounterDisplay) y _cambiando_\n+el contador (CounterIncrementor).\n+Aunque el resultado neto es el mismo que el ejemplo anterior, la separación de\n+responsabilidades permite encapsular una mayor complejidad en los widgets individuales\n+manteniendo al mismo tiempo la simplicidad en el padre.\n+\n+Juntando todo\n+-------------\n+\n+Consideremos un ejemplo más completo que reúne los conceptos\n+introducidos anteriormente. Trabajaremos con una hipotética aplicación de compras,\n+que muestra varios productos puestos a la venta y mantiene un carrito de compras para\n+las compras previstas. Comencemos por definir nuestra clase de presentación,\n+`ShoppingListItem`:\n+\n+```dart\n+class Product {\n+  const Product({this.name});\n+  final String name;\n+}\n+\n+typedef void CartChangedCallback(Product product, bool inCart);\n+\n+class ShoppingListItem extends StatelessWidget {\n+  ShoppingListItem({Product product, this.inCart, this.onCartChanged})\n+      : product = product,\n+        super(key: ObjectKey(product));\n+\n+  final Product product;\n+  final bool inCart;\n+  final CartChangedCallback onCartChanged;\n+\n+  Color _getColor(BuildContext context) {\n+    // El tema depende del BuildContext porque diferentes partes del árbol\n+    // pueden tener diferentes temas.  El BuildContext indica dónde se está llevando a cabo la","path":"es_ES/widgets-intro.md","position":546,"original_position":546,"commit_id":"71589a69be2af6461ca0cbbbc7081ec6db91c59c","original_commit_id":"71589a69be2af6461ca0cbbbc7081ec6db91c59c","user":{"login":"daniorca","id":42092307,"node_id":"MDQ6VXNlcjQyMDkyMzA3","avatar_url":"https://avatars1.githubusercontent.com/u/42092307?v=4","gravatar_id":"","url":"https://api.github.com/users/daniorca","html_url":"https://github.com/daniorca","followers_url":"https://api.github.com/users/daniorca/followers","following_url":"https://api.github.com/users/daniorca/following{/other_user}","gists_url":"https://api.github.com/users/daniorca/gists{/gist_id}","starred_url":"https://api.github.com/users/daniorca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daniorca/subscriptions","organizations_url":"https://api.github.com/users/daniorca/orgs","repos_url":"https://api.github.com/users/daniorca/repos","events_url":"https://api.github.com/users/daniorca/events{/privacy}","received_events_url":"https://api.github.com/users/daniorca/received_events","type":"User","site_admin":false},"body":"Listo corregido","created_at":"2018-08-11T21:36:17Z","updated_at":"2018-08-11T21:36:17Z","html_url":"https://github.com/flutter-es/website/pull/165#discussion_r209438108","pull_request_url":"https://api.github.com/repos/flutter-es/website/pulls/165","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/flutter-es/website/pulls/comments/209438108"},"html":{"href":"https://github.com/flutter-es/website/pull/165#discussion_r209438108"},"pull_request":{"href":"https://api.github.com/repos/flutter-es/website/pulls/165"}},"in_reply_to_id":209420923},"pull_request":{"url":"https://api.github.com/repos/flutter-es/website/pulls/165","id":207489012,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA3NDg5MDEy","html_url":"https://github.com/flutter-es/website/pull/165","diff_url":"https://github.com/flutter-es/website/pull/165.diff","patch_url":"https://github.com/flutter-es/website/pull/165.patch","issue_url":"https://api.github.com/repos/flutter-es/website/issues/165","number":165,"state":"open","locked":false,"title":"Close widgets-intro.md #22","user":{"login":"daniorca","id":42092307,"node_id":"MDQ6VXNlcjQyMDkyMzA3","avatar_url":"https://avatars1.githubusercontent.com/u/42092307?v=4","gravatar_id":"","url":"https://api.github.com/users/daniorca","html_url":"https://github.com/daniorca","followers_url":"https://api.github.com/users/daniorca/followers","following_url":"https://api.github.com/users/daniorca/following{/other_user}","gists_url":"https://api.github.com/users/daniorca/gists{/gist_id}","starred_url":"https://api.github.com/users/daniorca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daniorca/subscriptions","organizations_url":"https://api.github.com/users/daniorca/orgs","repos_url":"https://api.github.com/users/daniorca/repos","events_url":"https://api.github.com/users/daniorca/events{/privacy}","received_events_url":"https://api.github.com/users/daniorca/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-08-10T02:06:34Z","updated_at":"2018-08-11T21:36:17Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c42d4b3112f6dc4ef17ccab751b3d566098d432c","assignee":null,"assignees":[],"requested_reviewers":[{"login":"Gidrek","id":1173392,"node_id":"MDQ6VXNlcjExNzMzOTI=","avatar_url":"https://avatars2.githubusercontent.com/u/1173392?v=4","gravatar_id":"","url":"https://api.github.com/users/Gidrek","html_url":"https://github.com/Gidrek","followers_url":"https://api.github.com/users/Gidrek/followers","following_url":"https://api.github.com/users/Gidrek/following{/other_user}","gists_url":"https://api.github.com/users/Gidrek/gists{/gist_id}","starred_url":"https://api.github.com/users/Gidrek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Gidrek/subscriptions","organizations_url":"https://api.github.com/users/Gidrek/orgs","repos_url":"https://api.github.com/users/Gidrek/repos","events_url":"https://api.github.com/users/Gidrek/events{/privacy}","received_events_url":"https://api.github.com/users/Gidrek/received_events","type":"User","site_admin":false},{"login":"juanmorillios","id":4824933,"node_id":"MDQ6VXNlcjQ4MjQ5MzM=","avatar_url":"https://avatars0.githubusercontent.com/u/4824933?v=4","gravatar_id":"","url":"https://api.github.com/users/juanmorillios","html_url":"https://github.com/juanmorillios","followers_url":"https://api.github.com/users/juanmorillios/followers","following_url":"https://api.github.com/users/juanmorillios/following{/other_user}","gists_url":"https://api.github.com/users/juanmorillios/gists{/gist_id}","starred_url":"https://api.github.com/users/juanmorillios/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanmorillios/subscriptions","organizations_url":"https://api.github.com/users/juanmorillios/orgs","repos_url":"https://api.github.com/users/juanmorillios/repos","events_url":"https://api.github.com/users/juanmorillios/events{/privacy}","received_events_url":"https://api.github.com/users/juanmorillios/received_events","type":"User","site_admin":false},{"login":"cronos88","id":5728603,"node_id":"MDQ6VXNlcjU3Mjg2MDM=","avatar_url":"https://avatars1.githubusercontent.com/u/5728603?v=4","gravatar_id":"","url":"https://api.github.com/users/cronos88","html_url":"https://github.com/cronos88","followers_url":"https://api.github.com/users/cronos88/followers","following_url":"https://api.github.com/users/cronos88/following{/other_user}","gists_url":"https://api.github.com/users/cronos88/gists{/gist_id}","starred_url":"https://api.github.com/users/cronos88/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cronos88/subscriptions","organizations_url":"https://api.github.com/users/cronos88/orgs","repos_url":"https://api.github.com/users/cronos88/repos","events_url":"https://api.github.com/users/cronos88/events{/privacy}","received_events_url":"https://api.github.com/users/cronos88/received_events","type":"User","site_admin":false},{"login":"alexcotte","id":6886316,"node_id":"MDQ6VXNlcjY4ODYzMTY=","avatar_url":"https://avatars3.githubusercontent.com/u/6886316?v=4","gravatar_id":"","url":"https://api.github.com/users/alexcotte","html_url":"https://github.com/alexcotte","followers_url":"https://api.github.com/users/alexcotte/followers","following_url":"https://api.github.com/users/alexcotte/following{/other_user}","gists_url":"https://api.github.com/users/alexcotte/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcotte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcotte/subscriptions","organizations_url":"https://api.github.com/users/alexcotte/orgs","repos_url":"https://api.github.com/users/alexcotte/repos","events_url":"https://api.github.com/users/alexcotte/events{/privacy}","received_events_url":"https://api.github.com/users/alexcotte/received_events","type":"User","site_admin":false},{"login":"maginkgo","id":7377457,"node_id":"MDQ6VXNlcjczNzc0NTc=","avatar_url":"https://avatars3.githubusercontent.com/u/7377457?v=4","gravatar_id":"","url":"https://api.github.com/users/maginkgo","html_url":"https://github.com/maginkgo","followers_url":"https://api.github.com/users/maginkgo/followers","following_url":"https://api.github.com/users/maginkgo/following{/other_user}","gists_url":"https://api.github.com/users/maginkgo/gists{/gist_id}","starred_url":"https://api.github.com/users/maginkgo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maginkgo/subscriptions","organizations_url":"https://api.github.com/users/maginkgo/orgs","repos_url":"https://api.github.com/users/maginkgo/repos","events_url":"https://api.github.com/users/maginkgo/events{/privacy}","received_events_url":"https://api.github.com/users/maginkgo/received_events","type":"User","site_admin":false},{"login":"yesusmen","id":7623127,"node_id":"MDQ6VXNlcjc2MjMxMjc=","avatar_url":"https://avatars1.githubusercontent.com/u/7623127?v=4","gravatar_id":"","url":"https://api.github.com/users/yesusmen","html_url":"https://github.com/yesusmen","followers_url":"https://api.github.com/users/yesusmen/followers","following_url":"https://api.github.com/users/yesusmen/following{/other_user}","gists_url":"https://api.github.com/users/yesusmen/gists{/gist_id}","starred_url":"https://api.github.com/users/yesusmen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yesusmen/subscriptions","organizations_url":"https://api.github.com/users/yesusmen/orgs","repos_url":"https://api.github.com/users/yesusmen/repos","events_url":"https://api.github.com/users/yesusmen/events{/privacy}","received_events_url":"https://api.github.com/users/yesusmen/received_events","type":"User","site_admin":false},{"login":"caveligh","id":8608495,"node_id":"MDQ6VXNlcjg2MDg0OTU=","avatar_url":"https://avatars3.githubusercontent.com/u/8608495?v=4","gravatar_id":"","url":"https://api.github.com/users/caveligh","html_url":"https://github.com/caveligh","followers_url":"https://api.github.com/users/caveligh/followers","following_url":"https://api.github.com/users/caveligh/following{/other_user}","gists_url":"https://api.github.com/users/caveligh/gists{/gist_id}","starred_url":"https://api.github.com/users/caveligh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/caveligh/subscriptions","organizations_url":"https://api.github.com/users/caveligh/orgs","repos_url":"https://api.github.com/users/caveligh/repos","events_url":"https://api.github.com/users/caveligh/events{/privacy}","received_events_url":"https://api.github.com/users/caveligh/received_events","type":"User","site_admin":false},{"login":"desof","id":8689739,"node_id":"MDQ6VXNlcjg2ODk3Mzk=","avatar_url":"https://avatars3.githubusercontent.com/u/8689739?v=4","gravatar_id":"","url":"https://api.github.com/users/desof","html_url":"https://github.com/desof","followers_url":"https://api.github.com/users/desof/followers","following_url":"https://api.github.com/users/desof/following{/other_user}","gists_url":"https://api.github.com/users/desof/gists{/gist_id}","starred_url":"https://api.github.com/users/desof/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/desof/subscriptions","organizations_url":"https://api.github.com/users/desof/orgs","repos_url":"https://api.github.com/users/desof/repos","events_url":"https://api.github.com/users/desof/events{/privacy}","received_events_url":"https://api.github.com/users/desof/received_events","type":"User","site_admin":false},{"login":"Gyga8K","id":13306227,"node_id":"MDQ6VXNlcjEzMzA2MjI3","avatar_url":"https://avatars0.githubusercontent.com/u/13306227?v=4","gravatar_id":"","url":"https://api.github.com/users/Gyga8K","html_url":"https://github.com/Gyga8K","followers_url":"https://api.github.com/users/Gyga8K/followers","following_url":"https://api.github.com/users/Gyga8K/following{/other_user}","gists_url":"https://api.github.com/users/Gyga8K/gists{/gist_id}","starred_url":"https://api.github.com/users/Gyga8K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Gyga8K/subscriptions","organizations_url":"https://api.github.com/users/Gyga8K/orgs","repos_url":"https://api.github.com/users/Gyga8K/repos","events_url":"https://api.github.com/users/Gyga8K/events{/privacy}","received_events_url":"https://api.github.com/users/Gyga8K/received_events","type":"User","site_admin":false},{"login":"NicolasERT","id":18740694,"node_id":"MDQ6VXNlcjE4NzQwNjk0","avatar_url":"https://avatars1.githubusercontent.com/u/18740694?v=4","gravatar_id":"","url":"https://api.github.com/users/NicolasERT","html_url":"https://github.com/NicolasERT","followers_url":"https://api.github.com/users/NicolasERT/followers","following_url":"https://api.github.com/users/NicolasERT/following{/other_user}","gists_url":"https://api.github.com/users/NicolasERT/gists{/gist_id}","starred_url":"https://api.github.com/users/NicolasERT/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NicolasERT/subscriptions","organizations_url":"https://api.github.com/users/NicolasERT/orgs","repos_url":"https://api.github.com/users/NicolasERT/repos","events_url":"https://api.github.com/users/NicolasERT/events{/privacy}","received_events_url":"https://api.github.com/users/NicolasERT/received_events","type":"User","site_admin":false},{"login":"DanielMontil","id":24372906,"node_id":"MDQ6VXNlcjI0MzcyOTA2","avatar_url":"https://avatars1.githubusercontent.com/u/24372906?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielMontil","html_url":"https://github.com/DanielMontil","followers_url":"https://api.github.com/users/DanielMontil/followers","following_url":"https://api.github.com/users/DanielMontil/following{/other_user}","gists_url":"https://api.github.com/users/DanielMontil/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielMontil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielMontil/subscriptions","organizations_url":"https://api.github.com/users/DanielMontil/orgs","repos_url":"https://api.github.com/users/DanielMontil/repos","events_url":"https://api.github.com/users/DanielMontil/events{/privacy}","received_events_url":"https://api.github.com/users/DanielMontil/received_events","type":"User","site_admin":false},{"login":"Arkangel12","id":29683014,"node_id":"MDQ6VXNlcjI5NjgzMDE0","avatar_url":"https://avatars3.githubusercontent.com/u/29683014?v=4","gravatar_id":"","url":"https://api.github.com/users/Arkangel12","html_url":"https://github.com/Arkangel12","followers_url":"https://api.github.com/users/Arkangel12/followers","following_url":"https://api.github.com/users/Arkangel12/following{/other_user}","gists_url":"https://api.github.com/users/Arkangel12/gists{/gist_id}","starred_url":"https://api.github.com/users/Arkangel12/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Arkangel12/subscriptions","organizations_url":"https://api.github.com/users/Arkangel12/orgs","repos_url":"https://api.github.com/users/Arkangel12/repos","events_url":"https://api.github.com/users/Arkangel12/events{/privacy}","received_events_url":"https://api.github.com/users/Arkangel12/received_events","type":"User","site_admin":false},{"login":"BrayanMamani","id":29966733,"node_id":"MDQ6VXNlcjI5OTY2NzMz","avatar_url":"https://avatars1.githubusercontent.com/u/29966733?v=4","gravatar_id":"","url":"https://api.github.com/users/BrayanMamani","html_url":"https://github.com/BrayanMamani","followers_url":"https://api.github.com/users/BrayanMamani/followers","following_url":"https://api.github.com/users/BrayanMamani/following{/other_user}","gists_url":"https://api.github.com/users/BrayanMamani/gists{/gist_id}","starred_url":"https://api.github.com/users/BrayanMamani/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BrayanMamani/subscriptions","organizations_url":"https://api.github.com/users/BrayanMamani/orgs","repos_url":"https://api.github.com/users/BrayanMamani/repos","events_url":"https://api.github.com/users/BrayanMamani/events{/privacy}","received_events_url":"https://api.github.com/users/BrayanMamani/received_events","type":"User","site_admin":false},{"login":"plaso","id":31635267,"node_id":"MDQ6VXNlcjMxNjM1MjY3","avatar_url":"https://avatars2.githubusercontent.com/u/31635267?v=4","gravatar_id":"","url":"https://api.github.com/users/plaso","html_url":"https://github.com/plaso","followers_url":"https://api.github.com/users/plaso/followers","following_url":"https://api.github.com/users/plaso/following{/other_user}","gists_url":"https://api.github.com/users/plaso/gists{/gist_id}","starred_url":"https://api.github.com/users/plaso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/plaso/subscriptions","organizations_url":"https://api.github.com/users/plaso/orgs","repos_url":"https://api.github.com/users/plaso/repos","events_url":"https://api.github.com/users/plaso/events{/privacy}","received_events_url":"https://api.github.com/users/plaso/received_events","type":"User","site_admin":false},{"login":"flutter-es","id":41843975,"node_id":"MDQ6VXNlcjQxODQzOTc1","avatar_url":"https://avatars3.githubusercontent.com/u/41843975?v=4","gravatar_id":"","url":"https://api.github.com/users/flutter-es","html_url":"https://github.com/flutter-es","followers_url":"https://api.github.com/users/flutter-es/followers","following_url":"https://api.github.com/users/flutter-es/following{/other_user}","gists_url":"https://api.github.com/users/flutter-es/gists{/gist_id}","starred_url":"https://api.github.com/users/flutter-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flutter-es/subscriptions","organizations_url":"https://api.github.com/users/flutter-es/orgs","repos_url":"https://api.github.com/users/flutter-es/repos","events_url":"https://api.github.com/users/flutter-es/events{/privacy}","received_events_url":"https://api.github.com/users/flutter-es/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":1009652726,"node_id":"MDU6TGFiZWwxMDA5NjUyNzI2","url":"https://api.github.com/repos/flutter-es/website/labels/Traducci%C3%B3n","name":"Traducción","color":"4629a5","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/flutter-es/website/pulls/165/commits","review_comments_url":"https://api.github.com/repos/flutter-es/website/pulls/165/comments","review_comment_url":"https://api.github.com/repos/flutter-es/website/pulls/comments{/number}","comments_url":"https://api.github.com/repos/flutter-es/website/issues/165/comments","statuses_url":"https://api.github.com/repos/flutter-es/website/statuses/71589a69be2af6461ca0cbbbc7081ec6db91c59c","head":{"label":"flutter-es:traduccion_widgets_intro","ref":"traduccion_widgets_intro","sha":"71589a69be2af6461ca0cbbbc7081ec6db91c59c","user":{"login":"flutter-es","id":41843975,"node_id":"MDQ6VXNlcjQxODQzOTc1","avatar_url":"https://avatars3.githubusercontent.com/u/41843975?v=4","gravatar_id":"","url":"https://api.github.com/users/flutter-es","html_url":"https://github.com/flutter-es","followers_url":"https://api.github.com/users/flutter-es/followers","following_url":"https://api.github.com/users/flutter-es/following{/other_user}","gists_url":"https://api.github.com/users/flutter-es/gists{/gist_id}","starred_url":"https://api.github.com/users/flutter-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flutter-es/subscriptions","organizations_url":"https://api.github.com/users/flutter-es/orgs","repos_url":"https://api.github.com/users/flutter-es/repos","events_url":"https://api.github.com/users/flutter-es/events{/privacy}","received_events_url":"https://api.github.com/users/flutter-es/received_events","type":"User","site_admin":false},"repo":{"id":142719942,"node_id":"MDEwOlJlcG9zaXRvcnkxNDI3MTk5NDI=","name":"website","full_name":"flutter-es/website","owner":{"login":"flutter-es","id":41843975,"node_id":"MDQ6VXNlcjQxODQzOTc1","avatar_url":"https://avatars3.githubusercontent.com/u/41843975?v=4","gravatar_id":"","url":"https://api.github.com/users/flutter-es","html_url":"https://github.com/flutter-es","followers_url":"https://api.github.com/users/flutter-es/followers","following_url":"https://api.github.com/users/flutter-es/following{/other_user}","gists_url":"https://api.github.com/users/flutter-es/gists{/gist_id}","starred_url":"https://api.github.com/users/flutter-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flutter-es/subscriptions","organizations_url":"https://api.github.com/users/flutter-es/orgs","repos_url":"https://api.github.com/users/flutter-es/repos","events_url":"https://api.github.com/users/flutter-es/events{/privacy}","received_events_url":"https://api.github.com/users/flutter-es/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/flutter-es/website","description":"Flutter web en español (trabajo en proceso)","fork":true,"url":"https://api.github.com/repos/flutter-es/website","forks_url":"https://api.github.com/repos/flutter-es/website/forks","keys_url":"https://api.github.com/repos/flutter-es/website/keys{/key_id}","collaborators_url":"https://api.github.com/repos/flutter-es/website/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/flutter-es/website/teams","hooks_url":"https://api.github.com/repos/flutter-es/website/hooks","issue_events_url":"https://api.github.com/repos/flutter-es/website/issues/events{/number}","events_url":"https://api.github.com/repos/flutter-es/website/events","assignees_url":"https://api.github.com/repos/flutter-es/website/assignees{/user}","branches_url":"https://api.github.com/repos/flutter-es/website/branches{/branch}","tags_url":"https://api.github.com/repos/flutter-es/website/tags","blobs_url":"https://api.github.com/repos/flutter-es/website/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/flutter-es/website/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/flutter-es/website/git/refs{/sha}","trees_url":"https://api.github.com/repos/flutter-es/website/git/trees{/sha}","statuses_url":"https://api.github.com/repos/flutter-es/website/statuses/{sha}","languages_url":"https://api.github.com/repos/flutter-es/website/languages","stargazers_url":"https://api.github.com/repos/flutter-es/website/stargazers","contributors_url":"https://api.github.com/repos/flutter-es/website/contributors","subscribers_url":"https://api.github.com/repos/flutter-es/website/subscribers","subscription_url":"https://api.github.com/repos/flutter-es/website/subscription","commits_url":"https://api.github.com/repos/flutter-es/website/commits{/sha}","git_commits_url":"https://api.github.com/repos/flutter-es/website/git/commits{/sha}","comments_url":"https://api.github.com/repos/flutter-es/website/comments{/number}","issue_comment_url":"https://api.github.com/repos/flutter-es/website/issues/comments{/number}","contents_url":"https://api.github.com/repos/flutter-es/website/contents/{+path}","compare_url":"https://api.github.com/repos/flutter-es/website/compare/{base}...{head}","merges_url":"https://api.github.com/repos/flutter-es/website/merges","archive_url":"https://api.github.com/repos/flutter-es/website/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/flutter-es/website/downloads","issues_url":"https://api.github.com/repos/flutter-es/website/issues{/number}","pulls_url":"https://api.github.com/repos/flutter-es/website/pulls{/number}","milestones_url":"https://api.github.com/repos/flutter-es/website/milestones{/number}","notifications_url":"https://api.github.com/repos/flutter-es/website/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/flutter-es/website/labels{/name}","releases_url":"https://api.github.com/repos/flutter-es/website/releases{/id}","deployments_url":"https://api.github.com/repos/flutter-es/website/deployments","created_at":"2018-07-29T00:46:28Z","updated_at":"2018-08-11T12:38:04Z","pushed_at":"2018-08-11T20:35:39Z","git_url":"git://github.com/flutter-es/website.git","ssh_url":"git@github.com:flutter-es/website.git","clone_url":"https://github.com/flutter-es/website.git","svn_url":"https://github.com/flutter-es/website","homepage":"https://flutter-es.firebaseapp.com/","size":78045,"stargazers_count":15,"watchers_count":15,"language":"Dart","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":127,"license":null,"forks":2,"open_issues":127,"watchers":15,"default_branch":"master"}},"base":{"label":"flutter-es:master","ref":"master","sha":"f64d156b00822464278bb3dbb0f8845baec64f93","user":{"login":"flutter-es","id":41843975,"node_id":"MDQ6VXNlcjQxODQzOTc1","avatar_url":"https://avatars3.githubusercontent.com/u/41843975?v=4","gravatar_id":"","url":"https://api.github.com/users/flutter-es","html_url":"https://github.com/flutter-es","followers_url":"https://api.github.com/users/flutter-es/followers","following_url":"https://api.github.com/users/flutter-es/following{/other_user}","gists_url":"https://api.github.com/users/flutter-es/gists{/gist_id}","starred_url":"https://api.github.com/users/flutter-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flutter-es/subscriptions","organizations_url":"https://api.github.com/users/flutter-es/orgs","repos_url":"https://api.github.com/users/flutter-es/repos","events_url":"https://api.github.com/users/flutter-es/events{/privacy}","received_events_url":"https://api.github.com/users/flutter-es/received_events","type":"User","site_admin":false},"repo":{"id":142719942,"node_id":"MDEwOlJlcG9zaXRvcnkxNDI3MTk5NDI=","name":"website","full_name":"flutter-es/website","owner":{"login":"flutter-es","id":41843975,"node_id":"MDQ6VXNlcjQxODQzOTc1","avatar_url":"https://avatars3.githubusercontent.com/u/41843975?v=4","gravatar_id":"","url":"https://api.github.com/users/flutter-es","html_url":"https://github.com/flutter-es","followers_url":"https://api.github.com/users/flutter-es/followers","following_url":"https://api.github.com/users/flutter-es/following{/other_user}","gists_url":"https://api.github.com/users/flutter-es/gists{/gist_id}","starred_url":"https://api.github.com/users/flutter-es/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/flutter-es/subscriptions","organizations_url":"https://api.github.com/users/flutter-es/orgs","repos_url":"https://api.github.com/users/flutter-es/repos","events_url":"https://api.github.com/users/flutter-es/events{/privacy}","received_events_url":"https://api.github.com/users/flutter-es/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/flutter-es/website","description":"Flutter web en español (trabajo en proceso)","fork":true,"url":"https://api.github.com/repos/flutter-es/website","forks_url":"https://api.github.com/repos/flutter-es/website/forks","keys_url":"https://api.github.com/repos/flutter-es/website/keys{/key_id}","collaborators_url":"https://api.github.com/repos/flutter-es/website/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/flutter-es/website/teams","hooks_url":"https://api.github.com/repos/flutter-es/website/hooks","issue_events_url":"https://api.github.com/repos/flutter-es/website/issues/events{/number}","events_url":"https://api.github.com/repos/flutter-es/website/events","assignees_url":"https://api.github.com/repos/flutter-es/website/assignees{/user}","branches_url":"https://api.github.com/repos/flutter-es/website/branches{/branch}","tags_url":"https://api.github.com/repos/flutter-es/website/tags","blobs_url":"https://api.github.com/repos/flutter-es/website/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/flutter-es/website/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/flutter-es/website/git/refs{/sha}","trees_url":"https://api.github.com/repos/flutter-es/website/git/trees{/sha}","statuses_url":"https://api.github.com/repos/flutter-es/website/statuses/{sha}","languages_url":"https://api.github.com/repos/flutter-es/website/languages","stargazers_url":"https://api.github.com/repos/flutter-es/website/stargazers","contributors_url":"https://api.github.com/repos/flutter-es/website/contributors","subscribers_url":"https://api.github.com/repos/flutter-es/website/subscribers","subscription_url":"https://api.github.com/repos/flutter-es/website/subscription","commits_url":"https://api.github.com/repos/flutter-es/website/commits{/sha}","git_commits_url":"https://api.github.com/repos/flutter-es/website/git/commits{/sha}","comments_url":"https://api.github.com/repos/flutter-es/website/comments{/number}","issue_comment_url":"https://api.github.com/repos/flutter-es/website/issues/comments{/number}","contents_url":"https://api.github.com/repos/flutter-es/website/contents/{+path}","compare_url":"https://api.github.com/repos/flutter-es/website/compare/{base}...{head}","merges_url":"https://api.github.com/repos/flutter-es/website/merges","archive_url":"https://api.github.com/repos/flutter-es/website/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/flutter-es/website/downloads","issues_url":"https://api.github.com/repos/flutter-es/website/issues{/number}","pulls_url":"https://api.github.com/repos/flutter-es/website/pulls{/number}","milestones_url":"https://api.github.com/repos/flutter-es/website/milestones{/number}","notifications_url":"https://api.github.com/repos/flutter-es/website/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/flutter-es/website/labels{/name}","releases_url":"https://api.github.com/repos/flutter-es/website/releases{/id}","deployments_url":"https://api.github.com/repos/flutter-es/website/deployments","created_at":"2018-07-29T00:46:28Z","updated_at":"2018-08-11T12:38:04Z","pushed_at":"2018-08-11T20:35:39Z","git_url":"git://github.com/flutter-es/website.git","ssh_url":"git@github.com:flutter-es/website.git","clone_url":"https://github.com/flutter-es/website.git","svn_url":"https://github.com/flutter-es/website","homepage":"https://flutter-es.firebaseapp.com/","size":78045,"stargazers_count":15,"watchers_count":15,"language":"Dart","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":127,"license":null,"forks":2,"open_issues":127,"watchers":15,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/flutter-es/website/pulls/165"},"html":{"href":"https://github.com/flutter-es/website/pull/165"},"issue":{"href":"https://api.github.com/repos/flutter-es/website/issues/165"},"comments":{"href":"https://api.github.com/repos/flutter-es/website/issues/165/comments"},"review_comments":{"href":"https://api.github.com/repos/flutter-es/website/pulls/165/comments"},"review_comment":{"href":"https://api.github.com/repos/flutter-es/website/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/flutter-es/website/pulls/165/commits"},"statuses":{"href":"https://api.github.com/repos/flutter-es/website/statuses/71589a69be2af6461ca0cbbbc7081ec6db91c59c"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"daniorca"}}