Jan
FEB
Mar
18
2020
2021
2022
About this capture
Organization:
Internet Archive
Focused crawls are collections of frequently-updated webcrawl data from narrow (as opposed to broad or wide) web crawls, often focused on a single domain or subdomain.
T h e W a y b a c k M a c h i n e - h t t p : / / w e b . a r c h i v e . o r g / w e b / 2 0 2 1 0 2 1 8 0 1 0 0 4 8 / h t t p s : / / g i t h u b . c o m / g i t h u b / g r a p h q l - c l i e n t
S k i p t o c o n t e n t
" { \ " e v e n t _ t y p e \ " : \ " a n a l y t i c s . c l i c k \ " , \ " p a y l o a d \ " : { \ " c a t e g o r y \ " : \ " S i g n " u p \ " , \ " a c t i o n \ " : \ " c l i c k t o s i g n u p f o r a c c o u n t \ " , \ " l a b e l \ " : \ " r e f _ p a g e : < u s e r - n a m e > < r e p o - n a m e > ; r e f _ c t a : s i g n u p ; r e f _ l o c : h e a d e r l o g g e d o u t \ " , \ " o r i g i n a t i n g _ u r l \ " : \ " h t t p s : g i t h u b . c o m g i t h u b g r a p h q l - c l i e n t \ " , \ " u s e r _ i d \ " : n u l l } } " , " h y d r o - c l i c k - h m a c " = " > " e 8 c 3 7 5 7 a a 7 9 2 b 7 a f 1 0 6 3 1 a e d 2 a b 5 2 2 0 c 9 8 1 b a 0 f 5 4 2 c f 3 6 9 e 7 4 6 a 0 3 e 8 e f e 1 4 c 6 8 " } " >
S i g n up
●
F e a t u r e s →
● M o b i l e →
● A c t i o n s →
● C o d e s p a c e s →
● P a c k a g e s →
● S e c u r i t y →
● C o d e r e v i e w →
● P r o j e c t m a n a g e m e n t →
● I n t e g r a t i o n s →
● G i t H u b S p o n s o r s →
● C u s t o m e r s t o r i e s →
● S e c u r i t y →
●
●
●
● E x p l o r e G i t H u b →
L e a r n & c o n t r i b u t e
● T o p i c s →
● C o l l e c t i o n s →
● T r e n d i n g →
● L e a r n i n g L a b →
● O p e n s o u r c e g u i d e s →
C o n n e c t w i t h o t h e r s
● T h e R e a d M E P r o j e c t →
● E v e n t s →
● C o m m u n i t y f o r u m →
● G i t H u b E d u c a t i o n →
● G i t H u b S t a r s p r o g r a m →
●
●
P l a n s →
● C o m p a r e p l a n s →
● C o n t a c t S a l e s →
● N o n p r o f i t →
● E d u c a t i o n →
In this repository
All GitHub
↵
Jump to
↵
No suggested jump to results
{ { m e s s a g e } }
●
W a t c h
1 5 1
●
S t a r
9 5 6
●
F o r k
1 8 2
A R u b y l i b r a r y f o r d e c l a r i n g , c o m p o s i n g a n d e x e c u t i n g G r a p h Q L q u e r i e s
M I T L i c e n s e
9 5 6
s t a r s
1 8 2
f o r k s
S t a r
W a t c h
●
C o d e
●
I s s u e s
34
●
P u l l r e q u e s t s
25
●
A c t i o n s
●
P r o j e c t s
0
●
S e c u r i t y
●
I n s i g h t s
M o r e
●
C o d e
●
I s s u e s
●
P u l l r e q u e s t s
●
A c t i o n s
●
P r o j e c t s
●
S e c u r i t y
●
I n s i g h t s
N o t h i n g t o s h o w
r a n c h e s
N o t h i n g t o s h o w
5
b r a n c h e s
61
t a g s
G o t o f i l e
C o d e
C l o n e
U s e G i t o r c h e c k o u t w i t h S V N u s i n g t h e w e b U R L .
W o r k f a s t w i t h o u r o f f i c i a l C L I .
L e a r n m o r e .
●
O p e n w i t h G i t H u b D e s k t o p
●
D o w n l o a d Z I P
L a u n c h i n g G i t H u b D e s k t o p
I f n o t h i n g h a p p e n s , d o w n l o a d G i t H u b D e s k t o p a n d t r y a g a i n .
G o b a c k
L a u n c h i n g G i t H u b D e s k t o p
I f n o t h i n g h a p p e n s , d o w n l o a d G i t H u b D e s k t o p a n d t r y a g a i n .
G o b a c k
L a u n c h i n g X c o d e
I f n o t h i n g h a p p e n s , d o w n l o a d X c o d e a n d t r y a g a i n .
G o b a c k
L a u n c h i n g V i s u a l S t u d i o
I f n o t h i n g h a p p e n s , d o w n l o a d t h e G i t H u b e x t e n s i o n f o r V i s u a l S t u d i o a n d t r y a g a i n .
G o b a c k
L a t e s t c o m m i t
r m o s o l g o
M e r g e p u l l r e q u e s t # 2 6 7 f r o m g i t h u b / c a c h e - p o s s i b l e - t y p e s
…
8 f b 3 a 8 a
F e b 1 6 , 2 0 2 1
M e r g e p u l l r e q u e s t # 2 6 7 f r o m g i t h u b / c a c h e - p o s s i b l e - t y p e s
Use a cache of Schema.possible_types
8 f b 3 a 8 a
G i t s t a t s
●
7 1 9
c o m m i t s
F i l e s
P e r m a l i n k
F a i l e d t o l o a d l a t e s t c o m m i t i n f o r m a t i o n .
T y p e
N a m e
L a t e s t c o m m i t m e s s a g e
C o m m i t t i m e
. g i t h u b / w o r k f l o w s
D r o p s u p p o r t f o r g r a p h q l - r u b y 1 . 8 a n d 1 . 9
A u g 5 , 2 0 2 0
g u i d e s
F i x e r r o r h a n d l i n g l o g i c i n e x a m p l e
J u n 2 7 , 2 0 1 8
l i b
U s e a c a c h e o f S c h e m a . p o s s i b l e _ t y p e s
F e b 1 1 , 2 0 2 1
t e s t
" c l a s s = " l i n k - g r a y " h r e f = " / w e b / 2 0 2 1 0 2 1 8 0 1 0 0 4 8 / h t t p s : / / g i t h u b . c o m / g i t h u b / g r a p h q l - c l i e n t / c o m m i t / 9 9 d d b 8 0 b 7 0 c 3 2 4 0 7 4 4 b a b d 3 5 5 d a 1 9 6 8 9 b d a 6 9 1 6 3 " > A d d f a i l i n g t e s t f o r f i e l d n a m e d e r r o r s
A u g 5 , 2 0 2 0
. g i t i g n o r e
i g n o r e b u n d l e r a r t i f a c t s
O c t 9 , 2 0 1 9
. r u b o c o p . y m l
U p d a t e r u b o c o p
A u g 5 , 2 0 2 0
G e m f i l e
U p d a t e r u b o c o p
A u g 5 , 2 0 2 0
L I C E N S E
A d d L I C E N S E
A u g 3 , 2 0 1 6
R E A D M E . m d
U p d a t e R E A D M E . m d
M a r 1 , 2 0 2 0
R a k e f i l e
a d d b u n d l e r r a k e t a s k s
N o v 2 4 , 2 0 1 7
g r a p h q l - c l i e n t . g e m s p e c
D r o p s u p p o r t f o r g r a p h q l - r u b y 1 . 8 a n d 1 . 9
A u g 5 , 2 0 2 0
V i e w c o d e
R E A D M E . m d
g r a p h q l - c l i e n t
G r a p h Q L C l i e n t i s a R u b y l i b r a r y f o r d e c l a r i n g , c o m p o s i n g a n d e x e c u t i n g G r a p h Q L q u e r i e s .
U s a g e
I n s t a l l a t i o n
A d d g r a p h q l - c l i e n t t o y o u r G e m f i l e a n d t h e n r u n b u n d l e i n s t a l l .
# Gemfile
gem 'graphql-client'
C o n f i g u r a t i o n
S a m p l e c o n f i g u r a t i o n f o r a G r a p h Q L C l i e n t t o q u e r y f r o m t h e S W A P I G r a p h Q L W r a p p e r .
require "graphql/client"
require "graphql/client/http"
# Star Wars API example wrapper
module SWAPI
# Configure GraphQL endpoint using the basic HTTP network adapter.
HTTP = GraphQL ::Client ::HTTP . new ( "https://example.com/graphql" ) do
def headers ( context )
# Optionally set any HTTP headers
{ "User-Agent" : "My Client" }
end
end
# Fetch latest schema on init, this will make a network request
Schema = GraphQL ::Client . load_schema ( HTTP )
# However, it's smart to dump this to a JSON file and load from disk
#
# Run it from a script or rake task
# GraphQL::Client.dump_schema(SWAPI::HTTP, "path/to/schema.json")
#
# Schema = GraphQL::Client.load_schema("path/to/schema.json")
Client = GraphQL ::Client . new ( schema : Schema , execute : HTTP )
end
D e f i n i n g Q u e r i e s
I f y o u h a v e n ' t a l r e a d y , f a m i l i a r i z e y o u r s e l f w i t h t h e G r a p h Q L q u e r y s y n t a x . Q u e r i e s a r e d e c l a r e d w i t h t h e s a m e s y n t a x i n s i d e o f a < < - ' G R A P H Q L ' h e r e d o c . T h e r e i s n ' t a n y s p e c i a l q u e r y b u i l d e r R u b y D S L .
T h i s c l i e n t l i b r a r y e n c o u r a g e s a l l G r a p h Q L q u e r i e s t o b e d e c l a r e d s t a t i c a l l y a n d a s s i g n e d t o a R u b y c o n s t a n t .
HeroNameQuery = SWAPI ::Client . parse <<-'GRAPHQL'
query {
hero {
name
}
}
GRAPHQL
Q u e r i e s c a n r e f e r e n c e v a r i a b l e s t h a t a r e p a s s e d i n a t q u e r y e x e c u t i o n t i m e .
HeroFromEpisodeQuery = SWAPI ::Client . parse <<-'GRAPHQL'
query($episode: Episode) {
hero(episode: $episode) {
name
}
}
GRAPHQL
F r a g m e n t s a r e d e c l a r e d s i m i l a r l y .
HumanFragment = SWAPI ::Client . parse <<-'GRAPHQL'
fragment on Human {
name
homePlanet
}
GRAPHQL
T o i n c l u d e a f r a g m e n t i n a q u e r y , r e f e r e n c e t h e f r a g m e n t b y c o n s t a n t .
HeroNameQuery = SWAPI ::Client . parse <<-'GRAPHQL'
{
luke: human(id: "1000") {
...HumanFragment
}
leia: human(id: "1003") {
...HumanFragment
}
}
GRAPHQL
T h i s w o r k s f o r n a m e s p a c e d c o n s t a n t s .
module Hero
Query = SWAPI ::Client . parse <<-'GRAPHQL'
{
luke: human(id: "1000") {
...Human::Fragment
}
leia: human(id: "1003") {
...Human::Fragment
}
}
GRAPHQL
end
: : i s i n v a l i d i n r e g u l a r G r a p h Q L s y n t a x , b u t # p a r s e m a k e s a n i n i t i a l p a s s o n t h e q u e r y s t r i n g a n d r e s o l v e s a l l t h e f r a g m e n t s p r e a d s w i t h c o n s t a n t i z e .
E x e c u t i n g q u e r i e s
P a s s t h e r e f e r e n c e o f a p a r s e d q u e r y d e f i n i t i o n t o G r a p h Q L : : C l i e n t # q u e r y . D a t a i s r e t u r n e d b a c k i n a w r a p p e d G r a p h Q L : : C l i e n t : : S c h e m a : : O b j e c t T y p e s t r u c t t h a t p r o v i d e s R u b y - i s h a c c e s s o r s .
result = SWAPI ::Client . query ( Hero ::Query )
# The raw data is Hash of JSON values
# result["data"]["luke"]["homePlanet"]
# The wrapped result allows to you access data with Ruby methods
result . data . luke . home_planet
G r a p h Q L : : C l i e n t # q u e r y a l s o a c c e p t s v a r i a b l e s a n d c o n t e x t p a r a m e t e r s t h a t c a n b e l e v e r a g e d b y t h e u n d e r l y i n g n e t w o r k e x e c u t o r .
result = SWAPI ::Client . query ( Hero ::HeroFromEpisodeQuery , variables : { episode : "JEDI" } , context : { user_id : current_user_id } )
R a i l s E R B i n t e g r a t i o n
I f y o u ' r e u s i n g R u b y o n R a i l s E R B t e m p l a t e s , t h e r e s a E R B e x t e n s i o n t h a t a l l o w s s t a t i c q u e r i e s t o b e d e f i n e d i n t h e t e m p l a t e i t s e l f .
I n s t a n d a r d R u b y y o u c a n s i m p l y a s s i g n q u e r i e s a n d f r a g m e n t s t o c o n s t a n t s a n d t h e y ' l l b e a v a i l a b l e t h r o u g h o u t t h e a p p . H o w e v e r , t h e c o n t e n t s o f a n E R B t e m p l a t e i s c o m p i l e d i n t o a R u b y m e t h o d , a n d m e t h o d s c a n ' t a s s i g n c o n s t a n t s . S o a n e w E R B t a g w a s e x t e n d e d t o d e c l a r e s t a t i c s e c t i o n s t h a t i n c l u d e a G r a p h Q L q u e r y .
<%# app/views/humans/human.html.erb %>
<% graphql
fragment HumanFragment on Human {
name
homePlanet
}
%>
<p > <%= human . name %> lives on <%= human . home_planet %> .</ p >
T h e s e < % g r a p h q l s e c t i o n s a r e s i m p l y i g n o r e d a t r u n t i m e b u t m a k e t h e i r d e f i n i t i o n s a v a i l a b l e t h r o u g h c o n s t a n t s . T h e m o d u l e n a m e s p a c i n g i s d e r i v e d f r o m t h e . e r b ' s p a t h p l u s t h e d e f i n i t i o n n a m e .
>> "views/humans/human".camelize
=> "Views::Humans::Human"
>> Views::Humans::Human::HumanFragment
=> #<GraphQL::Client::FragmentDefinition>
E x a m p l e s
g i t h u b / g i t h u b - g r a p h q l - r a i l s - e x a m p l e i s a n e x a m p l e a p p l i c a t i o n u s i n g t h i s l i b r a r y t o i m p l e m e n t v i e w s o n t h e G i t H u b G r a p h Q L A P I .
I n s t a l l a t i o n
A d d g r a p h q l - c l i e n t t o y o u r a p p ' s G e m f i l e :
gem 'graphql-client'
S e e A l s o
● g r a p h q l - r u b y g e m w h i c h i m p l e m e n t s 8 0 % o f w h a t t h i s l i b r a r y p r o v i d e s . ❤ ️ @ r m o s o l g o
● F a c e b o o k ' s G r a p h Q L h o m e p a g e
● F a c e b o o k ' s R e l a y h o m e p a g e
A b o u t
A R u b y l i b r a r y f o r d e c l a r i n g , c o m p o s i n g a n d e x e c u t i n g G r a p h Q L q u e r i e s
T o p i c s
r u b y
g r a p h q l - c l i e n t
g r a p h q l
R e s o u r c e s
R e a d m e
L i c e n s e
M I T L i c e n s e
61
t a g s
N o p a c k a g e s p u b l i s h e d
+ 9 8 1
+ 2 8 c o n t r i b u t o r s
L a n g u a g e s
●
R u b y
9 9 . 7 %
●
H T M L
0 . 3 %
● © 2 0 2 1 G i t H u b , I n c .
● T e r m s
● P r i v a c y
● S e c u r i t y
● S t a t u s
● D o c s
● C o n t a c t G i t H u b
● P r i c i n g
● A P I
● T r a i n i n g
● B l o g
● A b o u t
Y o u c a n ’ t p e r f o r m t h a t a c t i o n a t t h i s t i m e .
Y o u s i g n e d i n w i t h a n o t h e r t a b o r w i n d o w . R e l o a d t o r e f r e s h y o u r s e s s i o n .
Y o u s i g n e d o u t i n a n o t h e r t a b o r w i n d o w . R e l o a d t o r e f r e s h y o u r s e s s i o n .