Skip to content

Commit 5a7ce55

Browse files
committed
Added introduction section
1 parent 38c876d commit 5a7ce55

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+627
-376
lines changed

Gruntfile.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ module.exports = function (grunt) {
1010
options: {
1111
livereload: true
1212
},
13-
files: ['Gruntfile.js', 'js/**/*.js', 'stylus/**/*.styl', 'html/**/*.jade'],
14-
// files: ['Gruntfile.js', 'js/**/*.js', 'stylus/**/*.styl', 'html/**/*.jade', 'html/index.html'],
13+
files: ['Gruntfile.js', 'js/**/*.js', 'stylus/**/*.styl', 'views/**/*.jade'],
1514
tasks: ['build']
1615
}
1716
},
@@ -35,7 +34,8 @@ module.exports = function (grunt) {
3534
jade: {
3635
compile: {
3736
files: {
38-
'index.html': 'html/index.jade'
37+
'index.html': 'views/index.jade',
38+
'introduction/index.html': 'views/introduction.jade'
3939
}
4040
}
4141
},

css/app.css

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

html/index.jade

Lines changed: 0 additions & 350 deletions
This file was deleted.

index.html

Lines changed: 2 additions & 2 deletions
Large diffs are not rendered by default.

introduction/index.html

Lines changed: 82 additions & 0 deletions
Large diffs are not rendered by default.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
"grunt-contrib-watch": "^0.6.1",
2121
"grunt-mocha-phantomjs": "0.7.0",
2222
"grunt-usemin": "^2.0.2",
23-
"matchdep": "~0.3.0"
23+
"matchdep": "~0.3.0",
24+
"markdown": "^0.5.0"
2425
},
2526
"scripts": {
2627
"test": "grunt test --verbose",

stylus/app.styl

Lines changed: 63 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,11 @@ body
291291
+breakpoint("desktop")
292292
padding 150px 0 40px
293293

294+
h1
295+
font-size 40px
296+
color white
297+
margin 25px 0 0
298+
294299
p
295300
color white
296301
a
@@ -883,26 +888,26 @@ body
883888
max-width 875px
884889
margin 5px auto
885890

886-
.btn, a.btn
887-
transition(background-color 0.2s ease)
888-
text-transform uppercase
889-
letter-spacing 2px
890-
font-weight bold
891-
border 1px solid #d0d2d3
892-
line-height 30px
893-
padding 15px 30px
894-
font-size 15px
895-
border-radius 3px
896-
text-decoration none
897-
display inline-block
898-
margin-top 30px
899-
&.btn-success
900-
background-color #eb5424
891+
.btn, a.btn
892+
transition(background-color 0.2s ease)
893+
text-transform uppercase
894+
letter-spacing 2px
895+
font-weight bold
896+
border 1px solid #d0d2d3
897+
line-height 30px
898+
padding 15px 30px
899+
font-size 15px
900+
border-radius 3px
901+
text-decoration none
902+
display inline-block
903+
margin-top 30px
904+
&.btn-success
905+
background-color #eb5424
906+
color white
907+
border-color transparent
908+
&:hover
909+
background-color darken(#eb5424, 30%)
901910
color white
902-
border-color transparent
903-
&:hover
904-
background-color darken(#eb5424, 30%)
905-
color white
906911

907912
.token
908913
margin-top 35px
@@ -914,6 +919,45 @@ body
914919
letter-spacing: 1px;
915920

916921

922+
// plain-text
923+
924+
.plain-text
925+
.container
926+
max-width 630px
927+
928+
h2
929+
margin-top 50px
930+
font-size 22px
931+
932+
h3
933+
font-size 18px
934+
935+
p
936+
line-height 1.8
937+
font-size 18px
938+
939+
img
940+
width 100%
941+
942+
943+
// go-tool
944+
945+
.go-tool
946+
text-align center
947+
border-top 1px solid #DDD
948+
p
949+
font-size 16px
950+
display inline-block
951+
text-transform uppercase
952+
+breakpoint("tablet")
953+
margin-right 20px
954+
.btn.btn-success
955+
background-color #D63AFF
956+
margin 0
957+
&:hover
958+
background-color darken(#D63AFF, 30%)
959+
960+
917961
// footer
918962

919963
footer

views/index.jade

Lines changed: 231 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,231 @@
1+
extends layout
2+
3+
block content
4+
nav.navbar.closed
5+
.container
6+
.top-mobile
7+
.menu-trigger
8+
span
9+
10+
a.brand(href='/')
11+
img(src='/img/pic_logo.svg').icon
12+
img(src='/img/logo.svg').logo
13+
14+
nav.menu
15+
a(href='#debugger').scrollto Debugger
16+
a(href='#libraries').scrollto Libraries
17+
a(href='/introduction') Introduction
18+
a(href='https://ask.auth0.com/category/jwt', target='_blank') Ask
19+
a(href='http://swag.auth0.com/', target='_blank') Get a T-shirt!
20+
21+
.social
22+
a.a0(href='https://auth0.com/', target='_blank')
23+
img(src='/img/ico_a0_white.svg')
24+
a.twitter(href='https://twitter.com/auth0', target="_blank")
25+
img(src='/img/ico_twitter.svg')
26+
27+
a.supported(href='https://auth0.com/', target="_blank")
28+
| Supported by
29+
img(src='/img/ico_logo.svg')
30+
31+
section.banner-jwt
32+
.container
33+
a.logo(href='/')
34+
img(src='/img/pic_logo.svg')
35+
36+
p
37+
| JSON Web Tokens are an open, industry standard 
38+
a(href='https://tools.ietf.org/html/rfc7519', target='_blank') RFC 7519
39+
| method for representing claims securely between two parties.
40+
p
41+
span JWT.IO allows you to decode, verify and generate JWT.
42+
43+
section.update-site
44+
svg(width='32px', height='32px', viewbox='0 0 32 32', version='1.1', class="paper")
45+
g#Page-1(stroke='none', stroke-width='1', fill='none', fill-rule='evenodd', sketch:type='MSPage')
46+
g#32px(sketch:type='MSLayerGroup', transform='translate(-805.000000, -2193.000000)', fill='#373A39')
47+
path#Fill-529(d='M835,2221 C835,2222.1 834.104,2223 833,2223 L809,2223 C807.896,2223 807,2222.1 807,2221 L807,2197 C807,2195.89 807.896,2195 809,2195 L833,2195 C834.104,2195 835,2195.89 835,2197 L835,2221 L835,2221 Z M833,2193 L809,2193 C806.79,2193 805,2194.79 805,2197 L805,2221 C805,2223.21 806.79,2225 809,2225 L833,2225 C835.209,2225 837,2223.21 837,2221 L837,2197 C837,2194.79 835.209,2193 833,2193 L833,2193 Z M828,2203 L814,2203 C813.447,2203 813,2203.45 813,2204 C813,2204.55 813.447,2205 814,2205 L828,2205 C828.552,2205 829,2204.55 829,2204 C829,2203.45 828.552,2203 828,2203 L828,2203 Z M828,2209 L814,2209 C813.447,2209 813,2209.45 813,2210 C813,2210.55 813.447,2211 814,2211 L828,2211 C828.552,2211 829,2210.55 829,2210 C829,2209.45 828.552,2209 828,2209 L828,2209 Z M828,2215 L814,2215 C813.447,2215 813,2215.45 813,2216 C813,2216.55 813.447,2217 814,2217 L828,2217 C828.552,2217 829,2216.55 829,2216 C829,2215.45 828.552,2215 828,2215 L828,2215 Z', sketch:type='MSShapeGroup')
48+
49+
strong NEW! 
50+
span JWT.IO gets a refresh! New logo, new website and more.
51+
a(href="https://auth0.com/blog/2015/07/21/jwt-json-webtoken-logo/", target="_blank")
52+
| Learn More
53+
svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg')
54+
path(d='M-838-2232H562v3600H-838z', fill='none')
55+
path(d='M16 10v28l22-14z')
56+
path(d='M0 0h48v48H0z', fill='none')
57+
58+
section#debugger.debugger-jwt
59+
.container
60+
//- a(name='debugger')
61+
h1 Debugger
62+
63+
.jwt-playground
64+
65+
.algorithm
66+
span Algorithm
67+
.hide
68+
label
69+
input(type='radio', name='algorithm', value='HS256', checked='')
70+
label
71+
input(type='radio', name='algorithm', value='RS256')
72+
.jwt-select
73+
select
74+
option(name='algorithm',value='HS256', selected='') HS256
75+
option(name='algorithm',value='RS256') RS256
76+
77+
.algorithm-code
78+
.tab-nav
79+
.tab-link.current
80+
a(href='#encoded-jwt') Encoded
81+
small paste a token here
82+
.tab-link
83+
a(href='#decoded-jwt') Decoded
84+
small edit the payload and secret (only HS256 supported)
85+
86+
.tab-content
87+
#encoded-jwt.box-content.current
88+
.input.js-input
89+
#decoded-jwt.box-content
90+
.output
91+
.jwt-explained.jwt-header
92+
p.text-line HEADER:
93+
span ALGORITHM & TOKEN TYPE
94+
.js-header
95+
96+
.jwt-explained.jwt-payload
97+
p.text-line PAYLOAD:
98+
span DATA
99+
.js-payload
100+
101+
.jwt-explained.jwt-signature
102+
p.text-line VERIFY SIGNATURE
103+
pre.pre-encode.HS256.
104+
HMACSHA256(
105+
base64UrlEncode(header) + "." +
106+
base64UrlEncode(payload),
107+
<input type="text" name="secret" value="secret">
108+
)<span class="is-base64-encoded-label"> <input id="is-base64-encoded" type="checkbox" name="is-base64-encoded"><label for="is-base64-encoded">secret base64 encoded</label></span>
109+
pre.pre-encode.RS256.
110+
RSASHA256(
111+
base64UrlEncode(header) + "." +
112+
base64UrlEncode(payload),
113+
<textarea rows="4" name="public-key" placeholder="Public Key or Certificate. Enter it in plain text only if you want to verify a token"></textarea>,
114+
<textarea rows="5" name="private-key" placeholder="Private Key (RSA). Enter the it in plain text only if you want to generate a new token. The key never leaves your browser."></textarea>
115+
)
116+
117+
.validation-status.js-signature
118+
119+
section#libraries.libraries-jwt
120+
.container
121+
.title-header
122+
//- a(name='libraries')
123+
h1 Libraries for Token Signing/Verification
124+
125+
.filter
126+
span Filter by
127+
.jwt-select
128+
select
129+
option(value='*', selected='') All
130+
option(value='.go') Go
131+
option(value='.haskell') Haskell
132+
option(value='.java') Java
133+
option(value='.net') NET
134+
option(value='.python') Python
135+
option(value='.php') PHP
136+
137+
.warning
138+
b Warning:
139+
| Critical vulnerabilities in JSON Web Token libraries with asymmetric keys.
140+
a(href='https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/')
141+
| Learn more
142+
143+
svg(height='48', viewbox='0 0 48 48', width='48', xmlns='http://www.w3.org/2000/svg')
144+
path(d='M-838-2232H562v3600H-838z', fill='none')
145+
path(d='M16 10v28l22-14z')
146+
147+
.libraries-sv(data-accordion-group)
148+
include libraries/net.jade
149+
include libraries/net2.jade
150+
include libraries/netrt.jade
151+
include libraries/python.jade
152+
include libraries/python2.jade
153+
include libraries/python3.jade
154+
include libraries/node.jade
155+
include libraries/java.jade
156+
include libraries/java2.jade
157+
include libraries/java3.jade
158+
include libraries/js.jade
159+
include libraries/php.jade
160+
include libraries/php2.jade
161+
include libraries/php3.jade
162+
include libraries/php4.jade
163+
include libraries/ruby.jade
164+
include libraries/ruby2.jade
165+
include libraries/elixir.jade
166+
include libraries/go.jade
167+
include libraries/go2.jade
168+
include libraries/haskell.jade
169+
include libraries/haskell2.jade
170+
include libraries/rust.jade
171+
include libraries/lua.jade
172+
include libraries/scala.jade
173+
include libraries/d.jade
174+
include libraries/clojure.jade
175+
include libraries/swift.jade
176+
include libraries/c.jade
177+
include libraries/q.jade
178+
include libraries/delphi.jade
179+
180+
section.sources
181+
.container
182+
.columns
183+
.column.badges
184+
h2 Badges
185+
.hold
186+
a(href='http://jwt.io/assets/badge.svg', target='_blank')
187+
img(src='assets/badge.svg')
188+
.text-hold
189+
a(href='http://jwt.io/assets/badge.svg', target='_blank')
190+
i.icon-budicon-722
191+
p http://jwt.io/assets/badge.svg
192+
.hold
193+
a(href='http://jwt.io/assets/badge-compatible.svg', target='_blank')
194+
img(src='assets/badge-compatible.svg')
195+
.text-hold
196+
a(href='http://jwt.io/assets/badge-compatible.svg', target='_blank')
197+
i.icon-budicon-722
198+
p http://jwt.io/assets/badge-compatible.svg
199+
.column.logotype
200+
h2 Logotype
201+
.hold
202+
a(href='http://jwt.io/assets/icon.svg', target='_blank')
203+
img(src='assets/icon.svg')
204+
.text-hold
205+
a(href='http://jwt.io/assets/icon.svg', target='_blank')
206+
i.icon-budicon-722
207+
p http://jwt.io/assets/icon.svg
208+
.hold
209+
a(href='http://jwt.io/assets/logo.svg', target='_blank')
210+
img(src='assets/logo.svg')
211+
.text-hold
212+
a(href='http://jwt.io/assets/logo.svg', target='_blank')
213+
i.icon-budicon-722
214+
p http://jwt.io/assets/logo.svg
215+
.column.tshirt
216+
h2 Store
217+
img(src='img/pic_tshirt.png')
218+
a.buy(href='http://swag.auth0.com/', target='_blank') Buy T-Shirt
219+
220+
.tokens-created
221+
.container
222+
img(src='img/pic_logo_ft.svg')
223+
p JWT.io is brought to you by Auth0.
224+
p A cloud service, APIs and tools that eliminate the friction of identity for your applications and APIs.
225+
226+
a(href='https://auth0.com/signup', target="_blank").btn.btn-success Create free account
227+
228+
.token
229+
h5 TOKENS CREATED
230+
231+
.counter

0 commit comments

Comments
 (0)