Files
Superalgos/api
2019-02-25 22:03:44 -08:00
..
2019-02-25 22:03:44 -08:00
2018-10-22 13:08:40 +02:00
2019-01-16 09:45:14 -08:00
2019-01-16 10:27:05 -08:00
2018-11-06 12:19:29 +01:00
2019-02-10 12:17:35 -08:00
2019-02-10 12:17:35 -08:00
2019-01-16 09:42:56 -08:00

Superalgos Team GraphQL API Server

This is the Superalgos Team Module server-side GraphQL API server. We use Webpack 4 + Docker to develop locally, then build to a distribution bundle that can then be uploaded via FTP, git or used with a continuous integration workflow.

This modules client-side frontend is in the client directory.

Getting Started

Run

		npm install

then

		npm run dev

Overview

The Superalgos/TeamModule API is a GraphQL server that serves the necessary queries and mutations for Superalgos teams to browser clients and the Superalgos platform.

Main Libraries

  • Prisma: GraphQL ORM for Postgres.
  • Graphql: GraphQL is a query language for APIs and a runtime for fulfilling those queries.
  • Apollo Server: Apollo Server is the best way to quickly build a production-ready, self-documenting API for GraphQL clients, using data from any source.
  • Docker

File organization

.                               # Top level directory located at your choice
├── database			# Database files for local Prisma development
├── src		        
│   ├── directives   # Directives for role permissions
│   ├── errors    # error handling
│   ├── generated     # Auto-compile GraphQl schema from Prisma endpoint
│   ├── graphql    # GraphQL API schema + resolvers
│   ├── logger    	# Utils for logging
│   ├── middleware   	# Server middleware
│   └── storage   	# Azure storage service
├── ApolloServer.js    # Main Apollo Server setup
│
└── index.js 				# Server API entrypoint