Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pablosilvab/graphql-mongo-server
Proyecto de juguete para probar GraphQL
https://github.com/pablosilvab/graphql-mongo-server
graphql mongodb nodejs
Last synced: 2 days ago
JSON representation
Proyecto de juguete para probar GraphQL
- Host: GitHub
- URL: https://github.com/pablosilvab/graphql-mongo-server
- Owner: pablosilvab
- Created: 2020-04-27T14:32:26.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-06T04:29:46.000Z (almost 2 years ago)
- Last Synced: 2023-03-07T13:32:37.194Z (over 1 year ago)
- Topics: graphql, mongodb, nodejs
- Language: JavaScript
- Size: 817 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Graphql-mongo-server
Proyecto de juguete para probar GraphQL## Ejecución
En ambiente de desarrollo:
```
npm start
```Una vez finalizado el desarrollo:
Generar código:
```
npm run build
```Ejecutar:
```
npm serve
```### Ejemplos:
#### Ejemplo con base de datos Mongo
* Agregar un nuevo Usuario
```
mutation {
createUser(input:{
firstname: "Pablo"
lastname: "Silva"
age:25
}) {
_id
firstname
lastname
age
}
}
```* Obtener todos los usuarios
```
query {
Users {
_id
firstname
lastname
age
}
}
```* Eliminar un usuario
```
mutation {
deleteUser(_id: "5ea767e3853b50433696bdd1") {
firstname
lastname
}
}
```* Actualizar un usuario
```
mutation {
updateUser(
_id: "5ea769fd014f6544b7bc6029",
input: {
firstname: "Neymar"
lastname: "Jr"
}) {
firstname
lastname
age
}
}
```#### Ejemplo con datos dummy
* Query para listar todas las tareas
```
query {
tasks {
_id
title
description
number
}
}
```* Mutation para crear una nueva tarea
```
mutation {
createTask(input: {
title: "Task 1",
description: "Awesome task"})
{
_id
title
description
number
}
}
```## Conceptos
* Schema: Objeto donde puedes indicar todo lo que puedes consultar desde un cliente. GrapiQL simula una aplicación cliente.
* Resolver: Los resolvers defines qué es lo que se va a hacer cuando se realiza una consulta.## Herramientas
* [GraphQL](https://graphql.org)
* [Babel](https://babeljs.io)