GithubHelp home page GithubHelp logo

beauvankirk / launchpad Goto Github PK

View Code? Open in Web Editor NEW

This project forked from johnymontana/awesome-launchpad

0.0 2.0 0.0 1.2 MB

Launchpad, the GraphQL server demo platform

Home Page: https://launchpad.graphql.com/

License: MIT License

JavaScript 99.23% CSS 0.70% HTML 0.07%

launchpad's Introduction

Launchpad

Launchpad is an in-browser GraphQL server playground. You can write a GraphQL schema example in JavaScript, and instantly create a serverless, publicly-accessible GraphQL endpoint. We call these code snippets that live on Launchpad “pads”.

Read the announcement post to understand the goals of the project.

Read the documentation to learn the ins and outs of Launchpad!

List of pads

This is a list of great pads deployed at Launchpad.

Something is missing? Create an issue!

Help Launchpad by creating more pads! Examples of the pads are available in issues under corresponding label

Launchpad screenshot

Development

Running the frontend code

There are two ways to run Launchpad - against the staging server or against your own server. Running against staging server is simpler, but naturally you can't control the server. Note that running against staging server is only possible on localhost and is meant for development purposes.

Both server and the client locally use .env file to set up settings. You just need one .env file in the root of the project with all of the variables which are read by the client and/or server.

For running against staging server, the config should be like following (you can also copy .env.staging.template to your .env):

REACT_APP_LAUNCHPAD_API_URL=https://launchpad-staging-api.herokuapp.com/
REACT_APP_AUTH0_DOMAIN=meteor.auth0.com
REACT_APP_AUTH0_CLIENT_ID=kUtxJjyapGN72Rs7tt5jXMgQ7axDgJLa

Then local server can be run:

npm install # npm 5 recommended
npm start

To test:

npm install
npm run check

Limitation - currently logs are not accessible on staging (or by running single tenant server yourself).

Running the server

Running the server is more complicated. You need MongoDB, Auth0 account and Auth0 Extend account (currently it requires enterprise account). Once you get those, you can set the server and client up with the following .env file.

REACT_APP_LAUNCHPAD_API_URL=localhost:8080
REACT_APP_AUTH0_DOMAIN={YOUR AUTH0 DOMAIN}
REACT_APP_AUTH0_CLIENT_ID={YOUR AUTH0 CLIENTID}
WT_TOKEN={YOUR MASTER AUTH0 EXTEND TOKEN}
WT_API={YOUR AUTH0 EXTEND OR WEBTAKS API URL}
WT_SINGLE_TENANT_CONTAINER={Container name if running single tenant webtask/extend}
WT_NO_PROXY=true
MONGODB_URL={YOUR MONGODB URL}
AUTH0_SECRET={YOUR AUTH0 SECRET}

Running against staging webtask service, you don't need your own webtask account then.

REACT_APP_LAUNCHPAD_API_URL=localhost:8080
REACT_APP_AUTH0_DOMAIN={YOUR AUTH0 DOMAIN}
REACT_APP_AUTH0_CLIENT_ID={YOUR AUTH0 CLIENTID}
MONGODB_URL={YOUR MONGODB URL}
AUTH0_SECRET={YOUR AUTH0 SECRET}
WT_SINGLE_TENANT_CONTAINER=launchpad-staging
WT_NO_PROXY=true
WT_TOKEN=eyJhbGciOiJIUzI1NiIsImtpZCI6ImxhdW5jaHBhZC0xIn0.eyJqdGkiOiJiOGQ4OWE2OWUxN2Y0NWNhODIxM2M4ZGVjZDVlYjY4MyIsImlhdCI6MTQ5NzYwMjk0NiwiY2EiOlsiZmYxNDczNDYzNzY5NDNmMWEwN2JkMmQyNDkyYmUzZTkiXSwiZGQiOjIsInRlbiI6ImxhdW5jaHBhZC1zdGFnaW5nIn0.jT31-pdmCG8QyrZnwMYO5Mgi6GUe5D9tfTFT8X1XiBw
WT_API=https://wt-launchpad.it.auth0.com/api
WT_NO_PROXY=true

Then you can run server

npm install
npm run dev-server

Production

Building frontend production bundle:

npm run build

Build backend.

npm run build-server

Run compiled backend

npm run start-server

Contributing

See CONTRIBUTING.md.

launchpad's People

Contributors

freiksenet avatar bdougie avatar excitement-engineer avatar

Watchers

James Cloos avatar Beau Van Kirk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.