firebase / firebase/firebaseopensource.com
Firestore (Android)
- Lenguaje dominante
- TypeScript
- Estrellas
- 127
- Forks
- 49
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
**Link to project (GitHub)**: https://github.com/natario1/Firestore
**Describe the project in 2-3 sentences**: A lightweight, efficient library to manage Firestore model data as reactive, observable objects that adapt to your Firestore schema and provide type safety and efficiency. Written in Kotlin, with built-in data-binding and `Parcelable` support.
**Why would Firebase developers be interested in this project?**: The library is a needed companion to the official Firestore SDK. It uses annotation processing to generate type-safe, null-safe, efficient (no reflection) objects around your Firestore model. It leverages Kotlin syntax, so declaring a property is as simple as `var name: String by this`.
Controlling the model class lets the engine do many things much more efficiently, for example:
- parsing data from snapshot: the library will cache and reuse as many objects as possible, plus use generated setters instead of reflection
- saving data to server: saves time and bandwidth by keeping track of dirty fields and uploading them, instead of the whole object.
In addition, each model class automatically offers a `@Parcelable` implementation and it works with Android's databinding out of the box, by simply declaring fields as bindable:
```kotlin
@FirestoreClass
class Message : FirestoreDocument() {
// You can use {message.text} and {message.comment} in XML layouts
// and they will be updated automatically when the model changes.
@get:Bindable var text: String by this
@get:Bindable var author: String by this
}
```
Guía de contribución
Línea de trabajo
El issue contiene una descripción de envío de proyecto para la biblioteca Firestore Android, pero no nombra ningún archivo del repositorio, prueba ni punto de entrada. Revisa primero el manejo existente de los envíos de proyectos en firebaseopensource.com y determina si este contenido debe añadirse o actualizarse; se considera terminado cuando el envío está representado según el formato establecido por el sitio.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- firebase, kotlin
- Área
- content, documentation
- Tipo de issue
- Documentación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 20/100