novvum / graphql-birdseye Goto Github PK
View Code? Open in Web Editor NEWView any GraphQL schema as a dynamic and interactive graph. ๐ฆ
Home Page: http://birdseye.novvum.io/
License: MIT License
View any GraphQL schema as a dynamic and interactive graph. ๐ฆ
Home Page: http://birdseye.novvum.io/
License: MIT License
Describe the bug
I just cloned GraphQL-birdseye and ran yarn install
, then hit the localhost:8000 page.
To Reproduce
Steps to reproduce the behavior:
yarn install
with yarn 1.16 and node 10GraphQL Error Unknown type "GitHub_Blob".
file: /Users/matt/Projects/graphql-birdseye/example/src/components/GetStarted.tsx
1 |
2 | {
3 | github {
4 | repository(owner: "Novvum", name: "graphql-birdseye") {
5 | object(expression: "master:README.md") {
6 | ... on GitHub_Blob {
| ^
7 | text
8 | }
9 | }
10 | }
11 | }
12 | }
13 |
Expected behavior
I expect to see the example start up.
Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
Currently, the graphql-birdseye
package is only available in React and it would be nice to have a version for Vue as well.
Describe alternatives you've considered
N/a
Additional context
N/a
Describe the bug
If the root query type is named something other than Query
(i.e. query_root
), the schema does not get built correctly.
To Reproduce
Steps to reproduce the behavior:
{
"__schema": {
"queryType": {
"name": "query_root",
"__typename": "__Type"
},
"mutationType": null,
"subscriptionType": null,
"types": [
{
"kind": "SCALAR",
"name": "Boolean",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "SCALAR",
"name": "Float",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "SCALAR",
"name": "ID",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "SCALAR",
"name": "Int",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "SCALAR",
"name": "String",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__Directive",
"description": null,
"fields": [
{
"name": "args",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__InputValue",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "description",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "locations",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "ENUM",
"name": "__DirectiveLocation",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "name",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "ENUM",
"name": "__DirectiveLocation",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": [
{
"name": "ARGUMENT_DEFINITION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "ENUM",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "ENUM_VALUE",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "FIELD",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "FIELD_DEFINITION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "FRAGMENT_DEFINITION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "FRAGMENT_SPREAD",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INLINE_FRAGMENT",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INPUT_FIELD_DEFINITION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INPUT_OBJECT",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INTERFACE",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "MUTATION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "OBJECT",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "QUERY",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "SCALAR",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "SCHEMA",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "SUBSCRIPTION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "UNION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
}
],
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__EnumValue",
"description": null,
"fields": [
{
"name": "deprecationReason",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "description",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "isDeprecated",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "name",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__Field",
"description": null,
"fields": [
{
"name": "args",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__InputValue",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "deprecationReason",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "description",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "isDeprecated",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "name",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "type",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__InputValue",
"description": null,
"fields": [
{
"name": "defaultValue",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "description",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "name",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "type",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__Schema",
"description": null,
"fields": [
{
"name": "directives",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Directive",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "mutationType",
"description": null,
"args": [],
"type": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "queryType",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "subscriptionType",
"description": null,
"args": [],
"type": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "types",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "__Type",
"description": null,
"fields": [
{
"name": "description",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "enumValues",
"description": null,
"args": [
{
"name": "includeDeprecated",
"description": null,
"type": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"defaultValue": "false",
"__typename": "__InputValue"
}
],
"type": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__EnumValue",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "fields",
"description": null,
"args": [
{
"name": "includeDeprecated",
"description": null,
"type": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"defaultValue": "false",
"__typename": "__InputValue"
}
],
"type": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Field",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "inputFields",
"description": null,
"args": [],
"type": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__InputValue",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "interfaces",
"description": null,
"args": [],
"type": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "kind",
"description": null,
"args": [],
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "ENUM",
"name": "__TypeKind",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "name",
"description": null,
"args": [],
"type": {
"kind": "SCALAR",
"name": "String",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "ofType",
"description": null,
"args": [],
"type": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
},
{
"name": "possibleTypes",
"description": null,
"args": [],
"type": {
"kind": "LIST",
"name": null,
"ofType": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "OBJECT",
"name": "__Type",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"__typename": "__Type"
},
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__Field"
}
],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "ENUM",
"name": "__TypeKind",
"description": null,
"fields": null,
"inputFields": null,
"interfaces": null,
"enumValues": [
{
"name": "ENUM",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INPUT_OBJECT",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "INTERFACE",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "LIST",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "NON_NULL",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "OBJECT",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "SCALAR",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
},
{
"name": "UNION",
"description": null,
"isDeprecated": false,
"deprecationReason": null,
"__typename": "__EnumValue"
}
],
"possibleTypes": null,
"__typename": "__Type"
},
{
"kind": "OBJECT",
"name": "query_root",
"description": "query root",
"fields": [],
"inputFields": null,
"interfaces": [],
"enumValues": null,
"possibleTypes": null,
"__typename": "__Type"
}
],
"directives": [
{
"name": "include",
"description": null,
"locations": [
"FIELD",
"FRAGMENT_SPREAD",
"INLINE_FRAGMENT"
],
"args": [
{
"name": "if",
"description": null,
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"defaultValue": null,
"__typename": "__InputValue"
}
],
"__typename": "__Directive"
},
{
"name": "skip",
"description": null,
"locations": [
"FIELD",
"FRAGMENT_SPREAD",
"INLINE_FRAGMENT"
],
"args": [
{
"name": "if",
"description": null,
"type": {
"kind": "NON_NULL",
"name": null,
"ofType": {
"kind": "SCALAR",
"name": "Boolean",
"ofType": null,
"__typename": "__Type"
},
"__typename": "__Type"
},
"defaultValue": null,
"__typename": "__InputValue"
}
],
"__typename": "__Directive"
}
],
"__typename": "__Schema"
}
}
Expected behavior
It should display the schema normally.
Package
core
Additional context
This mainly seems to be an issue with introspection queries.
Original issue: #27
Describe the bug
GraphqlBirdseye does not seem to be part of "graphql-birdseye-core"
To Reproduce
Steps to reproduce the behavior:
Generate a new vue app, yarn add the lib adn then add this to the script:
import * as bs from "graphql-birdseye-core";
console.log(bs);
Looking at the console output in the browser: no 'GraphqlBirdseye'
Expected behavior
GraphqlBirdseye available.
Screenshots
If applicable, add screenshots to help explain your problem.
Package
graphql-birdseye-core
Additional context
Add any other context about the problem here.
Is your feature request related to a problem? Please describe.
It is currently not possible to use a standalone version to be used with server-side frameworks.
Describe the solution you'd like
Make a new package that can be used with server-side frameworks:
Describe alternatives you've considered
N/a
Additional context
N/a
Is your feature request related to a problem? Please describe.
It would be awesome to have this project working smoothly with private endpoints that requires an Authorization
header.
Describe the solution you'd like
Add either an option to add this directly to the component as to its demo website ๐ฌ
Describe alternatives you've considered
Maybe it could have a checkbox like Requires Authentication
and than when the user press it it could enable another input that would accept a valid value for the Authorization
header ๐ค
Describe the bug
Hey, any reason for not just passing this.paper.svg
to svgPanZoom
, instead of passing the SVG ID selector? I can see that svgPanZoom
supports passing the svg element and not just the selector (https://github.com/ariutta/svg-pan-zoom/blob/master/src/svg-pan-zoom.js#L940).
Currently trying to integrate birdseye as a web component but this line causes svgPanZoom to fail when it tries to get the svg element using document.querySelector
when the selector is passed instead of the element, with this error (Provided selector did not find any elements. Selector: #v-26
). document.querySelector
doesn't search through the shadow DOM of web components which is why it doesn't find the element. Passing the SVG element directly, svgPanZoom
doesn't need to query the DOM for the element.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
It should work when wrapped as a web component
Package
The package this issue pertains to (i.e. core, react, etc.).
core
Describe the bug
I can't run graphql-birdseye as a React page in a new React project. I supplied directly the prop introspectionQuery
with the dummy schema available in here and few others, but I am facing multiple errors, which after further inspection, seem related to JointJS.
To Reproduce
I provided a repository to reproduce the behavior. It was built using the create-react-app utility tool.
Steps to reproduce the behavior:
git clone https://github.com/TAnas0/graphql-birdseye-example.git
yarn install
yarn start
Expected behavior
Rendering of the interface showing the schema supplied.
Package
React package, JointJS dependency
Describe the bug
Using BabelPluginRelay
, introspectionQuery.tsx yields the error:
Error: babel-plugin-relay/macro: BabelPluginRelay: Expected exactly one definition per graphql tag. Learn more: https://www.npmjs.com/package/babel-plugin-relay
at Array.forEach (<anonymous>)
at Array.forEach (<anonymous>)
Maybe update to implement createFragmentContainer()
syntax for fragments.
To Reproduce
Use declared introspection query with babel-plugin-relay/macro
.
Encounter above error.
Expected behavior
Not encountering above error.
Package
react
Additional context
See:
BabelPluginRelay Error in 4.0
and
Breaking change
Caveat
I'm just getting my feet wet with React
, and it is entirely possible I'm completely misunderstanding what's going on here. ::cha-grin:: If that's the case, please gently slap me and move on with your day. :)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.