Programmering

Grand stack sigter mod at forenkle datakrævende appudvikling

Grafdatabasebygger Neo4j har bygget en teknologiestak kaldet Grand beregnet til full-stack web- og mobilapplikationer, der involverer kompleks manipulation af data.

Grand stack kombinerer et sæt teknologier rettet mod skalerbare applikationer og brug af JavaScript. Stakken har integrationer mellem GraphQL og Neo4j for at gøre det lettere for udviklere at bruge de to sammen. GraphQL definerer et strengt skema, der bruges som en plan for en API. Integration med Neo4j tillader, at skemaet kører databasemodellen og oversætter GraphQL-forespørgsler til Cypher.

Grand stack muliggør også mere kompleks grafgennemgang. Udviklere behøver ikke at implementere resolverfunktioner til GraphQL-serveren, fordi de leveres ved hjælp af stakken baseret på skemaet. Resolver-funktioner definerer, hvordan man henter data i en implementering af en GraphQL-server, enten fra en database eller en API.

Selve stakken er stadig under udvikling; Neo4J-GraphQL-integrationen forbliver f.eks. i beta, og der søges strammere integration med databasen. Udvikling af rollebaseret adgang til skemafelterne er en del af denne plan.

Komponenter i stakken, alle open source, inkluderer:

  • GraphQL-forespørgselssproget og runtime til opbygning af API'er, udviklet af Facebook.
  • Facebooks React JavaScript-bibliotek til opbygning af brugergrænseflader.
  • Apollo-pakke med værktøjer til opbygning af GraphQL-arbejdsgange
  • Neo4j-grafdatabasen, der muliggør datamodellering i realtid forespørgsel via Cypher-sproget.

I det mindste oprindeligt er JavaScript kritisk i Grand, fordi det bruges i React, Apollo-værktøjerne og Neo4J-GraphQL-integration. Node.js, til JavaScript på serveren, bruges også som en målplatform.

For at vise, hvordan Grand fungerer, har Neo4j en online workshop, der bruger stakken til at oprette en filmanbefalingswebapplikation. Denne applikation kan gøres let med Grand stack, fordi udviklere kun behøver at kommentere GraphQL-felter med en Cypher-forespørgsel, der angiver, hvordan man genererer en anbefaling, sagde Will Lyon, softwareingeniør hos Neo4j, der byggede stackens GraphQL- og Neo4j-integrationer.

Hvor skal man downloade Grand stack-ressourcer

Grandstack.io indeholder ressourcer til projektet. Udviklere kan få adgang til projekterne, der består af stakken, på projektets websteder eller på GitHub:

  • GraphQL
  • Reagere
  • Apollo
  • Neo4j