All Projects → Shpota → Skmz

Shpota / Skmz

Licence: apache-2.0
A GraphQL-based Web App written with Go, React and MongoDB

Programming Languages

javascript
184084 projects - #8 most used programming language
go
31211 projects - #10 most used programming language
golang
3204 projects
js
455 projects

Projects that are alternatives of or similar to Skmz

Grial
A Node.js framework for creating GraphQL API servers easily and without a lot of boilerplate.
Stars: ✭ 194 (-48.95%)
Mutual labels:  graphql, graphql-api
Parse Server
API server module for Node/Express
Stars: ✭ 19,165 (+4943.42%)
Mutual labels:  graphql, graphql-api
Rails Devise Graphql
A Rails 6 boilerplate to create your next Saas product. Preloaded with graphQL, devise, JWT, CanCanCan, RailsAdmin, Rubocop, Rspec, i18n and more.
Stars: ✭ 199 (-47.63%)
Mutual labels:  graphql, graphql-api
Gqlify
[NOT MAINTAINED]An API integration framework using GraphQL
Stars: ✭ 182 (-52.11%)
Mutual labels:  graphql, graphql-api
Villus
🏎 A tiny and fast GraphQL client for Vue.js
Stars: ✭ 378 (-0.53%)
Mutual labels:  graphql, graphql-api
Graphql Spqr Spring Boot Starter
Spring Boot 2 starter powered by GraphQL SPQR
Stars: ✭ 187 (-50.79%)
Mutual labels:  graphql, graphql-api
36 Graphql Concepts
📜 36 concepts every GraphQL developer should know.
Stars: ✭ 209 (-45%)
Mutual labels:  graphql, graphql-api
Frisky
🍿 Open Source GraphQL API for Online Shows
Stars: ✭ 161 (-57.63%)
Mutual labels:  graphql, graphql-api
Wp Graphql
🚀 GraphQL API for WordPress
Stars: ✭ 3,097 (+715%)
Mutual labels:  graphql, graphql-api
trouble-training
FullStack DDD/CQRS with GraphQL workshop including distributed tracing and monitoring. This shows the configuration from React frontend to .Net backend.
Stars: ✭ 271 (-28.68%)
Mutual labels:  full-stack, graphql-api
Graphql2rest
GraphQL to REST converter: automatically generate a RESTful API from your existing GraphQL API
Stars: ✭ 181 (-52.37%)
Mutual labels:  graphql, graphql-api
Express Graphql Mongodb Boilerplate
A boilerplate for Node.js apps / GraphQL-API / Authentication from scratch - express, graphql - (graphql compose), mongodb (mongoose).
Stars: ✭ 288 (-24.21%)
Mutual labels:  graphql, docker-compose
Storefront Api
Storefront GraphQL API Gateway. Modular architecture. ElasticSearch included. Works great with Magento1, Magento2, Spree, OpenCart, Pimcore and custom backends
Stars: ✭ 180 (-52.63%)
Mutual labels:  graphql, graphql-api
Aws Appsync React Workshop
Building real-time offline-ready Applications with React, GraphQL & AWS AppSync
Stars: ✭ 193 (-49.21%)
Mutual labels:  graphql, graphql-api
React Apollo Form
Build React forms based on GraphQL APIs.
Stars: ✭ 178 (-53.16%)
Mutual labels:  graphql, graphql-api
Mongoke
Instant Graphql for MongoDb (active branch is golang, rewrite in process)
Stars: ✭ 203 (-46.58%)
Mutual labels:  graphql, docker-compose
Countries
🌎 Public GraphQL API for information about countries
Stars: ✭ 156 (-58.95%)
Mutual labels:  graphql, graphql-api
Pop
Monorepo of the PoP project, including: a server-side component model in PHP, a GraphQL server, a GraphQL API plugin for WordPress, and a website builder
Stars: ✭ 160 (-57.89%)
Mutual labels:  graphql, graphql-api
Graphqlize
A Clojure & JVM library for developing GraphQL API instantly from Postgres and MySQL databases
Stars: ✭ 240 (-36.84%)
Mutual labels:  graphql, graphql-api
Morpheus Graphql
Haskell GraphQL Api, Client and Tools
Stars: ✭ 285 (-25%)
Mutual labels:  graphql, graphql-api

SKMZ Build Status

A web application that allows to query programmers with their skills via a GraphQL API. The application is implemented with Go and gqlgen on the backend side and React on the front end side. MongoDB is used as a database.

Showcase

System requirements

You need to have Docker and Docker Compose installed in oder to build and run the project. No additional tools required.

How to build and run in production mode

Perform

docker-compose up

Access the application via http://localhost:8080. Access the GraphQL Playground using http://localhost:8080/playground.

How to develop locally

Tools

In order to develop the app locally the following tools are required: Docker, Docker Compose (if you are on Mac or Windows it comes installed with Docker), Node.js and Go.

Verify if your environment is ready by running the following 4 commands:

docker --version
docker-compose --version
npm --version
go version

Start the dev DB

docker-compose -f docker-compose-dev.yml up

This will start a local MongoDB which will be accessible on port 27017. The DB will be populated with test records from mongo.init.

Start the server

Navigate to the /server folder and execute:

go run server.go

This will compile and run the back end part. As a result, the API and the GraphQL playground will be available.

Start the Front End dev server

Navigate to the /webapp folder and execute the following commands:

npm install
npm start

As a result, the web site will be accessible on http://localhost:3000.

The changes on the front end side will be automatically applied once a file is saved. The changes in the back end code require restarting the back end.

Customizations

The database starts with a preloaded set of data which can be customized in the mongo.init file.

Here is an example of a GraphQL query which can be run in the Playground:

query {
  programmers(skill: "go") { 
    name,
    picture,
    title,
    company,
    skills {
      name,
      icon,
      importance
    }
  }
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].