-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
127 lines (126 loc) · 72 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.</title>
<meta name="generator" content="VuePress 1.9.7">
<link canonical="https://tsed.io">
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
<link rel="icon" href="/favicon.ico" type="apple-touch-icon">
<link rel="icon" href="/apple-touch-icon.png" type="image/x-icon" sizes="180x180">
<link rel="icon" href="/favicon-32x32.png" type="image/png" sizes="32x32">
<link rel="icon" href="/favicon-16x16.png" type="image/png" sizes="16x16">
<link rel="manifest" href="/site.webmanifest">
<meta property="og:url" content="https://tsed.io">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta property="og:title" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta property="og:description" content="A Node.js and TypeScript Framework on top of Express/Koa.js. It provides a lot of decorators and guidelines to write your code.">
<meta property="og:image" content="https://tsed.io/tsed-og.png">
<meta property="og:image:width" content="1024">
<meta property="og:image:height" content="1024">
<meta name="twitter:title" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta name="twitter:description" content="A Node.js and TypeScript Framework on top of Express/Koa.js. It provides a lot of decorators and guidelines to write your code.">
<meta name="twitter:card" content="summary">
<meta name="description" content="A Node.js and TypeScript Framework on top of Express/Koa.js. Ts.ED is a framework on top of Express/Koa to write your application with TypeScript (or ES6). It provides a lot of decorators and guideline to make your code more readable and less error-prone.">
<meta name="keywords" content="Ts.ED nodejs express typescript javascript es6 decorators mvc model ioc service model middleware socket.io swagger typeorm mongoose ajv">
<meta property="og:url" content="https://tsed.io">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta property="og:title" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta property="og:description" content="A Node.js and TypeScript Framework on top of Express/Koa.js. It provides a lot of decorators and guidelines to write your code.">
<meta property="og:image" content="https://tsed.io/tsed-og.png">
<meta property="og:image:width" content="1024">
<meta property="og:image:height" content="1024">
<meta name="twitter:title" content="Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js.">
<meta name="twitter:description" content="A Node.js and TypeScript Framework on top of Express/Koa.js. It provides a lot of decorators and guidelines to write your code.">
<meta name="twitter:card" content="summary">
<link rel="preload" href="/assets/css/0.styles.8eca58ea.css" as="style"><link rel="preload" href="/assets/js/app.926b1e9f.js" as="script"><link rel="preload" href="/assets/js/4.9da0d4f2.js" as="script"><link rel="preload" href="/assets/js/50.f0284917.js" as="script"><link rel="preload" href="/assets/js/5.a1f37254.js" as="script"><link rel="prefetch" href="/assets/js/10.192db993.js"><link rel="prefetch" href="/assets/js/11.702ff33b.js"><link rel="prefetch" href="/assets/js/12.98f19144.js"><link rel="prefetch" href="/assets/js/13.ea033dda.js"><link rel="prefetch" href="/assets/js/14.157676d3.js"><link rel="prefetch" href="/assets/js/15.264f34ac.js"><link rel="prefetch" href="/assets/js/16.ebbb675d.js"><link rel="prefetch" href="/assets/js/17.4d71bb18.js"><link rel="prefetch" href="/assets/js/18.ce82bc8c.js"><link rel="prefetch" href="/assets/js/19.db8b0189.js"><link rel="prefetch" href="/assets/js/20.e4bb0b1e.js"><link rel="prefetch" href="/assets/js/21.f071c64f.js"><link rel="prefetch" href="/assets/js/22.c6803fa6.js"><link rel="prefetch" href="/assets/js/23.2e2935a3.js"><link rel="prefetch" href="/assets/js/24.5f568ba3.js"><link rel="prefetch" href="/assets/js/25.a02f2154.js"><link rel="prefetch" href="/assets/js/26.836506b8.js"><link rel="prefetch" href="/assets/js/27.284eaa19.js"><link rel="prefetch" href="/assets/js/28.64295ac6.js"><link rel="prefetch" href="/assets/js/29.74ba7b90.js"><link rel="prefetch" href="/assets/js/3.371dc61f.js"><link rel="prefetch" href="/assets/js/30.a04f40db.js"><link rel="prefetch" href="/assets/js/31.5b3113d3.js"><link rel="prefetch" href="/assets/js/32.0d151cd9.js"><link rel="prefetch" href="/assets/js/33.7b99ed5a.js"><link rel="prefetch" href="/assets/js/34.2c32e2ee.js"><link rel="prefetch" href="/assets/js/35.2d0bfdcd.js"><link rel="prefetch" href="/assets/js/36.e1e1385a.js"><link rel="prefetch" href="/assets/js/37.4f052593.js"><link rel="prefetch" href="/assets/js/38.8bfa9bf2.js"><link rel="prefetch" href="/assets/js/39.3e3809b9.js"><link rel="prefetch" href="/assets/js/40.c4da18dc.js"><link rel="prefetch" href="/assets/js/41.bdbcff63.js"><link rel="prefetch" href="/assets/js/42.c3d8e9dc.js"><link rel="prefetch" href="/assets/js/43.4406fffa.js"><link rel="prefetch" href="/assets/js/44.e4c405bd.js"><link rel="prefetch" href="/assets/js/45.8c5061fd.js"><link rel="prefetch" href="/assets/js/46.8a921dfc.js"><link rel="prefetch" href="/assets/js/47.bbb52a0c.js"><link rel="prefetch" href="/assets/js/48.53baeef5.js"><link rel="prefetch" href="/assets/js/49.e1ef50fd.js"><link rel="prefetch" href="/assets/js/51.38c0c215.js"><link rel="prefetch" href="/assets/js/52.063fc2cf.js"><link rel="prefetch" href="/assets/js/53.6b162b23.js"><link rel="prefetch" href="/assets/js/54.37763414.js"><link rel="prefetch" href="/assets/js/55.f19906d8.js"><link rel="prefetch" href="/assets/js/56.a43b86d2.js"><link rel="prefetch" href="/assets/js/57.262143e3.js"><link rel="prefetch" href="/assets/js/58.94ddfaf6.js"><link rel="prefetch" href="/assets/js/59.a86395d9.js"><link rel="prefetch" href="/assets/js/6.09d4e604.js"><link rel="prefetch" href="/assets/js/60.c286d79b.js"><link rel="prefetch" href="/assets/js/61.9409f473.js"><link rel="prefetch" href="/assets/js/62.bae71d63.js"><link rel="prefetch" href="/assets/js/63.14342d5a.js"><link rel="prefetch" href="/assets/js/64.e79520c9.js"><link rel="prefetch" href="/assets/js/65.f721616c.js"><link rel="prefetch" href="/assets/js/66.82cff691.js"><link rel="prefetch" href="/assets/js/67.41f4a209.js"><link rel="prefetch" href="/assets/js/68.32f25786.js"><link rel="prefetch" href="/assets/js/69.b46452bf.js"><link rel="prefetch" href="/assets/js/7.37b8c546.js"><link rel="prefetch" href="/assets/js/70.8d384a93.js"><link rel="prefetch" href="/assets/js/71.1f15bb42.js"><link rel="prefetch" href="/assets/js/72.b81551a1.js"><link rel="prefetch" href="/assets/js/73.a80d8fd1.js"><link rel="prefetch" href="/assets/js/74.444fcbac.js"><link rel="prefetch" href="/assets/js/75.3c7f34e9.js"><link rel="prefetch" href="/assets/js/76.9f3bf7e4.js"><link rel="prefetch" href="/assets/js/8.20cd9e80.js"><link rel="prefetch" href="/assets/js/9.47b63b30.js"><link rel="prefetch" href="/assets/js/vendors~docsearch.4f02fe06.js">
<link rel="stylesheet" href="/assets/css/0.styles.8eca58ea.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="init"><div class="theme-container no-sidebar"><header class="navbar px-5 flex items-center navbar-box-shadow fixed top-0 fixed top-0 inset-x-0 h-16 bg-white"><div class="flex h-full items-center justify-center md:hidden"><div class="flex cursor-pointer text-xl mr-4"><i class="bx bx-menu"></i></div></div> <div class="flex h-full items-center justify-center m-0 p-0 mr-8"><a href="/" aria-current="page" class="router-link-exact-active router-link-active"><!----> <span class="text-xl text-normal"><strong class="font-medium"><span class='text-blue'>Ts</span>.ED</strong></span></a></div> <div class="flex-1 h-full"><nav class="font-bold hidden lg:flex h-full"><ul class="flex items-center h-full text-gray-dark"><li class="mx-1 content-wrapper py-4"><a href="/getting-started/" title="Getting started | Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js." class="link internal px-3 p-1 hover:bg-blue hover:text-white transition-all rounded-small cursor-pointer"><!---->
Getting started
</a></li><li class="mx-1 content-wrapper"><div class="dropdown-wrapper relative flex items-center h-full px-3 py-4 -hover"><div class="flex items-center h-full w-full"><a title="Documentation | Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js." class="flex items-center hover:text-gray-darker cursor-pointer transition-all duration-500 ease-in-out"><span>Documentation</span> <i class="bx bx-chevron-down"></i></a></div> <div class="nav-dropdown absolute text-gray-darker z-2"> <ul class="reset-list text-gray-darker"><li><!----> <a href="/docs/configuration.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Configuration</span></a></li><li class="mt-3"><!----> <a href="/docs/controllers.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Controllers</span></a></li><li class="mt-3"><!----> <a href="/docs/providers.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Providers</span></a></li><li class="mt-3"><!----> <a href="/docs/model.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Models</span></a></li><li class="mt-3"><!----> <a href="/docs/converters.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Json Mapper</span></a></li><li class="mt-3"><!----> <a href="/docs/middlewares.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Middlewares</span></a></li><li class="mt-3"><!----> <a href="/docs/pipes.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Pipes</span></a></li><li class="mt-3"><!----> <a href="/docs/interceptors.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Interceptors</span></a></li><li class="mt-3"><!----> <a href="/docs/authentication.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Authentication</span></a></li><li class="mt-3"><!----> <a href="/docs/hooks.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Hooks</span></a></li><li class="mt-3"><!----> <a href="/docs/response-filter.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Response filter</span></a></li><li class="mt-3"><!----> <a href="/docs/exceptions.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Exceptions</span></a></li><li class="mt-3"><!----> <a href="/docs/logger.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Logger</span></a></li><li class="mt-3"><!----> <a href="/docs/request-context.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Context</span></a></li><li class="mt-3"><!----> <a href="/docs/cache.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Cache</span></a></li><li class="mt-3"><!----> <a href="/docs/platform-api.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Platform API</span></a></li><li class="mt-3"><!----> <a href="/docs/command.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Command</span></a></li><li class="mt-3"><!----> <a href="/docs/templating.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Templating</span></a></li><li class="mt-3"><!----> <a href="/docs/validation.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Validation</span></a></li><li class="mt-3"><!----> <a href="/tutorials/session.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Session & Cookies</span></a></li></ul></div></div></li><li class="mx-1 content-wrapper"><div class="dropdown-wrapper relative flex items-center h-full px-3 py-4 -hover"><div class="flex items-center h-full w-full"><a title="Warehouse | Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js." class="flex items-center hover:text-gray-darker cursor-pointer transition-all duration-500 ease-in-out"><span>Warehouse</span> <i class="bx bx-chevron-down"></i></a></div> <div class="nav-dropdown absolute text-gray-darker z-2"> <ul class="reset-list text-gray-darker"><li><!----> <a href="/warehouse/" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Explore plugins</span></a></li><li class="mt-3"><!----> <a href="/tutorials/" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Project examples</span></a></li></ul></div></div></li><li class="mx-1 content-wrapper"><div class="dropdown-wrapper relative flex items-center h-full px-3 py-4 -hover"><div class="flex items-center h-full w-full"><a title="Tutorials | Ts.ED - A Node.js and TypeScript Framework on top of Express/Koa.js." class="flex items-center hover:text-gray-darker cursor-pointer transition-all duration-500 ease-in-out"><span>Tutorials</span> <i class="bx bx-chevron-down"></i></a></div> <div class="nav-dropdown absolute text-gray-darker z-2"> <ul class="reset-list text-gray-darker"><li><!----> <a href="/tutorials/ajv.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">AJV</span></a></li><li class="mt-3"><!----> <a href="/tutorials/aws.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">AWS</span></a></li><li class="mt-3"><!----> <a href="/tutorials/agenda.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Agenda</span></a></li><li class="mt-3"><!----> <a href="/tutorials/graphql.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">GraphQL</span></a></li><li class="mt-3"><!----> <a href="/tutorials/ioredis.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">IORedis</span></a></li><li class="mt-3"><!----> <a href="/tutorials/keycloak.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Keycloak</span></a></li><li class="mt-3"><!----> <a href="/tutorials/mikroorm.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">MikroORM</span></a></li><li class="mt-3"><!----> <a href="/tutorials/mongoose.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Mongoose</span></a></li><li class="mt-3"><!----> <a href="/tutorials/oidc.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">OIDC</span></a></li><li class="mt-3"><!----> <a href="/tutorials/objection.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Objection.js</span></a></li><li class="mt-3"><!----> <a href="/tutorials/passport.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Passport.js</span></a></li><li class="mt-3"><!----> <a href="/tutorials/prisma.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Prisma</span></a></li><li class="mt-3"><!----> <a href="/tutorials/serverless.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Serverless</span></a></li><li class="mt-3"><!----> <a href="/tutorials/socket-io.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Socket.io</span></a></li><li class="mt-3"><!----> <a href="/tutorials/stripe.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Stripe</span></a></li><li class="mt-3"><!----> <a href="/tutorials/swagger.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Swagger</span></a></li><li class="mt-3"><!----> <a href="/tutorials/terminus.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Terminus</span></a></li><li class="mt-3"><!----> <a href="/tutorials/typeorm.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">TypeORM</span></a></li></ul></div></div></li><li class="mx-1 content-wrapper"><div class="dropdown-wrapper relative flex items-center h-full px-3 py-4 -hover"><div class="flex items-center h-full w-full"><a title="Extras" class="flex items-center hover:text-gray-darker cursor-pointer transition-all duration-500 ease-in-out"><span></span> <i class="bx bx-dots-horizontal-rounded text-lg"></i></a></div> <div class="nav-dropdown absolute text-gray-darker z-2"> <ul class="reset-list text-gray-darker"><li><!----> <a href="http://cli.tsed.io" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">Ts.ED CLI</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li><li class="mt-3"><!----> <a href="http://logger.tsed.io" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">Ts.ED Logger</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li><li class="mt-3"><!----> <a href="/team.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Team</span></a></li><li class="mt-3"><!----> <a href="/tutorials/" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Resources</span></a></li><li class="mt-3"><!----> <a href="/contributing.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Contributes</span></a></li><li class="mt-3"><!----> <a href="/support.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">Support</span></a></li><li class="mt-3"><!----> <a href="/license.html" class="link internal flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><!----> <span class="flex-1">License</span></a></li><li class="mt-3"><!----> <a href="https://api-docs.tsed.io/api.html" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">Api reference</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li></ul></div></div></li></ul></nav></div> <div class="flex h-full"><nav class="hidden sm:flex"><ul class="flex items-center h-full text-gray-dark"><li class="mx-1 content-wrapper"><div class="dropdown-wrapper relative flex items-center h-full px-3 py-4 -hover"><div class="flex items-center h-full w-full"><a class="flex items-center hover:text-gray-darker cursor-pointer transition-all duration-500 ease-in-out"><span>v6.133.1</span> <i class="bx bx-chevron-down"></i></a></div> <div class="nav-dropdown absolute text-gray-darker z-2"> <ul class="reset-list text-gray-darker"><li><!----> <a href="http://tsed.io" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">v7 (current)</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li><li class="mt-3"><!----> <a href="http://v5.tsed.io" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">v5 (obsolete)</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li><li class="mt-3"><!----> <a href="http://v4.tsed.io" target="_blank" rel="noopener noreferrer" class="link external flex items-center justify-center text-sm block opacity-75 hover:opacity-100 p-0 px-6 mt-1 mb-2 cursor-pointer transition-all"><span class="flex-1">v4 (obsolete)</span> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></li></ul></div></div></li></ul></nav></div> <div class="flex items-center h-full"><a title="Github" href="https://github.com/tsedio/tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center lg:text-lg py-4"><i class="bx bxl-github"></i> </a><a title="Slack" href="https://api.tsed.io/rest/slack/tsedio/tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center lg:text-lg py-4"><i class="bx bxl-slack"></i> </a><a title="Twitter" href="https://twitter.com/TsED_io" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center lg:text-lg py-4"><i class="bx bxl-twitter"></i> </a><a title="StackOverflow" href="https://stackoverflow.com/search?q=tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center lg:text-lg py-4"><i class="bx bxl-stack-overflow"></i> </a><a title="Support us" href="https://tsed.io/support.html" target="_blank" rel="noopener noreferrer" show-title="true" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center lg:text-lg py-4"><i class="bx bxs-heart"></i> <span class="hidden sm:block text-sm font-bold ml-1 mr-1">Support us</span></a></div> <div class="flex items-center h-full"><div id="docsearch"></div></div></header> <div class="sidebar-mask"></div> <main class="main-content relative z-2 pt-16"><div><div class="hero-banner flex pt-5 md:items-center"><div class="container flex w-full max-w-site mx-auto px-5 sm:px-10"><div class="flex flex-col w-full sm:w-1/2 justify-center"><div class="mb-5 text-center md:text-left"><h1 class="text-2xl normal-case mb-4 leading-8 md:font-light md:text-5xl md:leading-10"><div class="content__hero-brand"><p><span class="block sm:inline mb-10 sm:mb-0 sm:text-bold text-7xl sm:text-5xl font-medium"><span class="text-blue">Ts</span>.ED</span> Framework<br> <small>for <a class="text-darker-gray">Node.js</a> and <a class="text-darker-gray">TypeScript</a></small></p></div></h1> <div class="mt-0 text-gray-dark md:text-lg pb-3"><div class="content__hero-slogan"><p>Build your awesome server-side <strong>application.</strong> <span class="overflow-hidden align-top relative inline-block">
<span class="absolute top-0 block animation-words-slider"><span class="block text-left whitespace-no-wrap">#Decorators</span><span class="block text-left whitespace-no-wrap">#Rest API</span><span class="block text-left whitespace-no-wrap">#DI</span><span class="block text-left whitespace-no-wrap">#Controller</span> <span class="block text-left whitespace-no-wrap">#Decorators</span></span></span></p></div></div></div> <div class="flex flex-wrap"><div class="pb-5 pr-3 md:pb-0 w-1/2 md:w-auto"><a href="/getting-started/" title="" class="link internal border-2 w-full reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><!----> <span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
Getting started
</span></span></a></div> <div class="pb-5 pr-0 md:pr-3 w-1/2 md:w-auto"><a href="https://api.tsed.io/rest/slack/tsedio/tsed" title="" target="_blank" rel="noopener noreferrer" class="link external border-2 mr-2 w-full reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-transparent border-gray-darker text-gray-darker focus:bg-transparent-active focus:border-gray-darker-active
hover:bg-transparent-active hover:border-gray-darker-active focus:text-gray-darker-active hover:text-gray-darker-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center"><i class="mr-2 -ml-1 text-lg bx bxl-slack"></i>
Discussions
</span></span> <!----></a></div> <div class="pr-3 flex-1 md:flex-none md:w-auto"><a href="https://github.com/sponsors/Romakita" title="" target="_blank" rel="noopener noreferrer" class="link external border-2 mr-2 w-full reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-transparent border-gray-darker text-gray-darker focus:bg-transparent-active focus:border-gray-darker-active
hover:bg-transparent-active hover:border-gray-darker-active focus:text-gray-darker-active hover:text-gray-darker-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center"><i class="mr-2 -ml-1 text-lg bx bx-heart"></i>
Sponsor @romakita
</span></span> <!----></a></div> <div class="relative inline-flex w-auto md:w-auto"><!----> <span class="text-xs py-1 px-2 absolute right-0 rounded-medium rounded-bl-small bg-gray-darker text-white" style="top:-12px;right:-28px;">0</span></div></div></div> <div class="hidden sm:block w-1/2"><div class="content__hero-content"><img src="/hero-bg.svg" class="animate-hero"></div></div></div></div> <div class="bg-gray-lighter py-10"><div class="container flex flex-col w-full max-w-md mx-auto px-3 pb-5 text-center"><h2 class="text-2xl mb-5 normal-case"><div class="content__testimonial-title"><p>Why <span class="text-blue">Ts</span>.ED?</p></div></h2> <div class="content__testimonial-content"><p>Ts.ED is a Node.js Framework on top of Express/Koa.js. Written in Typescript, it helps you build your server-side application easily and quickly.
If you want to start a complete out-of-the-box project or fully customize it yourself, Ts.ED will guide you there !</p></div></div></div> <div><div class="container flex flex-col w-full max-w-site mx-auto px-5 py-5"><div><div class="flex flex-wrap align-center justify-center"><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-server"></i></div> <h3 class="text-md font-bold text-blue mb-2">Rest API</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>Create your Rest API easily and create different version paths of your API compliant with <a class="home-link" href="/tutorials/swagger.html">OpenSpec</a> and <a class="home-link" href="/docs/model.html">JsonSchema</a>.</div></div></div><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-shape-square"></i></div> <h3 class="text-md font-bold text-blue mb-2">Configuration</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>Don't waste your time with configuration, the server is preconfigured to start quickly! Try our <a class="home-link" href="/getting-started/#installation">CLI</a>.</div></div></div><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-extension"></i></div> <h3 class="text-md font-bold text-blue mb-2">Plugins</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>Choose between different plugins to create your own stack.</div></div></div><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-diamond"></i></div> <h3 class="text-md font-bold text-blue mb-2">Class based</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>Define class as <a class="home-link" href="/docs/controllers.html">Controller</a>, <a class="home-link" href="/docs/model.html">Model</a>, <a class="home-link" href="/docs/providers.html">Providers</a> (DI), <a class="home-link" href="/docs/pipes.html">Pipes</a>, <a class="home-link" href="/docs/middlewares.html">Middlewares</a>, etc...</div></div></div><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-paint"></i></div> <h3 class="text-md font-bold text-blue mb-2">Decorators</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>A lot of decorators are provided to structure your code and define routes and methods.</div></div></div><div class="text-center flex flex-col p-3 w-full sm:w-1/2 md:w-1/3 mb-5"><div class="p-2 text-api-default mb-3"><i class="text-7xl bx bx-test-tube"></i></div> <h3 class="text-md font-bold text-blue mb-2">Testing</h3> <div class="m-auto" style="max-width: 250px"><!----> <div>To test or not to test? isn't a question. Ts.ED embeds some features to test your code! <a class="home-link" href="/docs/testing.html">See more</a>.</div></div></div></div> <div class="flex items-center justify-center pt-5 mb-5"><div><a href="/getting-started/" title="" class="link internal m-2 reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><!----> <span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
See more
</span></span></a> <!----></div></div> <div class="content__features-footer"></div></div></div></div> <div class="content__default"><div class="home-body relative"><div class="relative overflow-hidden bg-gray-lighter bg-gradient"><div class="showcase relative shadow-inner relative z-1"><div class="w-full max-w-site mx-auto px-5 py-10 relative z-1"><div class="flex flex-col items-center"><h2 class="preview-title">Preview</h2> <p class="text-center font-normal text-md m-auto max-w-sm pb-0">
See in our live demo what Ts.ED looks like, without leaving your personal browser.
</p> <div class="w-full pt-5 pb-10 sm:py-10"><div class="relative rounded-medium border-2 border-gray-darker bg-white" style="height:500px;width:100%;overflow:hidden;"><div class="sandbox-logo-bg absolute top-0 left-0 h-full w-full overflow-hidden rounded-medium z-0"><svg viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid" class="w-full fill-blue opacity-10"><g><path d="M115.497674,261.08837 L115.497674,154.478845 L23.8139535,101.729261 L23.8139535,162.501763 L65.8104558,186.8486 L65.8104558,232.549219 L115.497674,261.08837 Z M139.311628,261.714907 L189.916577,232.563707 L189.916577,185.779949 L232.186047,161.285235 L232.186047,101.27387 L139.311628,154.895035 L139.311628,261.714907 Z M219.971965,80.8276886 L171.155386,52.5391067 L128.292316,77.4106841 L85.1040206,52.5141067 L35.8521355,81.1812296 L127.765737,134.063073 L219.971965,80.8276886 Z M0,222.211907 L0,74.4948807 L127.986799,0 L256,74.1820085 L256,221.978632 L127.983954,295.72283 L0,222.211907 Z"></path></g></svg></div> <div class="absolute top-0 left-0 h-full w-full flex items-center justify-center z-1"><button href="" title="" class="reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-small shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">Start sandbox</span></span></button></div></div></div></div></div></div> <div class="absolute sandbox-logo z-0"><svg viewBox="0 0 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid" class="w-full fill-blue"><g><path d="M115.497674,261.08837 L115.497674,154.478845 L23.8139535,101.729261 L23.8139535,162.501763 L65.8104558,186.8486 L65.8104558,232.549219 L115.497674,261.08837 Z M139.311628,261.714907 L189.916577,232.563707 L189.916577,185.779949 L232.186047,161.285235 L232.186047,101.27387 L139.311628,154.895035 L139.311628,261.714907 Z M219.971965,80.8276886 L171.155386,52.5391067 L128.292316,77.4106841 L85.1040206,52.5141067 L35.8521355,81.1812296 L127.765737,134.063073 L219.971965,80.8276886 Z M0,222.211907 L0,74.4948807 L127.986799,0 L256,74.1820085 L256,221.978632 L127.983954,295.72283 L0,222.211907 Z"></path></g></svg></div></div> <div class="w-full max-w-site mx-auto px-5 py-5 md:py-10"><p class="text-center font-normal text-xl m-auto max-w-lg">Here are some of the libraries and technologies
that we
use or support with this <strong>framework</strong></p> <div class="mt-5 pt-5"><div class="flex flex-col -m-5 mb-5"><ul class="reset-list flex flex-wrap items-center"><li class="p-5 w-1/3 sm:w-auto"><a href="https://www.typescriptlang.org/" title="TypeScript" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/typescript.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">TypeScript</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://expressjs.com/" title="Express.js" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/expressjs.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Express.js</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://koajs.com/" title="Koa.js" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/koa.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Koa.js</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://jestjs.io/" title="Jest" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/jest.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Jest</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://mochajs.org/" title="Mocha" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/mochajs.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Mocha</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://babeljs.io/" title="Babel" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/babel.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Babel</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://webpack.js.org/" title="Webpack" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/webpack.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Webpack</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/ajv.html" title="AJV" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="https://ajv.js.org/img/ajv.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">AJV</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/swagger.html" title="Swagger" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/swagger.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Swagger</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/passport.html" title="Passport" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/passportjs.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Passport</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/mongoose.html" title="Mongoose" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/mongoose.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Mongoose</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/prisma.html" title="Prisma" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/prisma-3.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Prisma</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/mikroorm.html" title="MikroORM" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="https://mikro-orm.io/img/logo.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">MikroORM</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/typeorm.html" title="TypeORM" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/typeorm.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">TypeORM</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/ioredis.html" title="IORedis" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/ioredis.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">IORedis</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/graphql.html#apollo" title="Apollo" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/apollo-graphql-compact.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Apollo</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/graphql.html#typegraphql" title="TypeGraphQL" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/typegraphql.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">TypeGraphQL</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/graphql.html#nexus" title="Nexus" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/nexus.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Nexus</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/socket-io.html" title="Socket.io" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/socketio.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Socket.io</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/aws.html" title="AWS" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/aws.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">AWS</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/oidc.html" title="OIDC" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="https://oauth.net/images/oauth-logo-square.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">OIDC</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/stripe.html" title="Stripe" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/stripe.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Stripe</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/seq.html" title="Seq" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="https://blog.datalust.co/content/images/2018/09/Seq-380px-1.png" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Seq</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="https://logentries.com/" title="LogEntries" target="_blank" rel="noopener noreferrer" class="link external flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/logentries.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">LogEntries</span> <!----></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/docs/logger.html" title="Insight" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/rapid7.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Insight</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/docs/logger.html" title="RabbitMQ" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/rabbitmq.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">RabbitMQ</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/docs/logger.html" title="Loggly" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/loggly.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Loggly</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/docs/logger.html" title="LogStash" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/elastic-logstash.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">LogStash</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/docs/logger.html" title="Slack" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/slack.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Slack</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/keycloak.html" title="Keycloak" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/keycloak_icon.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Keycloak</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/agenda.html" title="Agenda" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/agenda.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Agenda</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/serverless.html" title="Serveless" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/serverless.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Serveless</span></a></li><li class="p-5 w-1/3 sm:w-auto"><a href="/tutorials/terminus.html" title="Terminus" class="link internal flex flex-col reset-link transition-all duration-500 ease-in-out relative no-underline hover:scale-110 text-normal text-platinium hover:text-platinium-active"><!----> <figure class="flex items-center justify-center relative z-2 overflow-hidden rounded-medium mb-2 bg-gray-lighter shadow-md p-4" style="width:80px;height:80px;"><img data-url="/package.svg" class="w-full opacity-0 transition-all no-shadow"></figure> <!----> <span class="flex items-center justify-center whitespace-pre font-bold" style="width:80px;">Terminus</span></a></li></ul></div></div> <div class="pt-5"><p class="text-center font-normal text-xl m-auto max-w-lg">What's new ?</p> <div class="mt-5 pt-5"><div class="overflow-auto" style="max-height:300px;"><div><div class="max-w-xl mx-auto py-5"><div class="flow-root"><ul class="-mb-8 reset-list"></ul></div></div></div> <div class="flex items-center justify-center p-5"><button href="" title="" class="reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-small shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center"><!---->
See more
</span></span></button></div></div></div></div></div></div></div> <div classes="bg-gray-lighter mb-10" badge="[object Object]" class="showcase bg-gray-lighter mb-10"><div class="w-full max-w-site mx-auto px-5 py-5 md:py-10"><!----> <div><div><h2 class="text-center text-4xl normal-case mb-10">Our awesome <b>contributors</b></h2> <!----> <div><div class="-m-2 mb-5"><ul class="reset-list flex flex-wrap items-center"></ul></div></div> <div class="mb-4 text-center"><a href="/contributing.html" title="" class="link internal reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><!----> <span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
Become contributor
</span></span></a></div></div></div> <!----></div></div> <div><div class="showcase relative"><div class="hidden lg:block absolute right-0 top-0 opacity-10 z-0 w-1/4 p-5 m-10"><img data-url="/sponsors.svg" alt="https://www.freepik.com/" title="https://www.freepik.com/"></div> <div class="w-full max-w-site mx-auto px-5 py-5 relative z-1"><div><div class="flex flex-col items-center"><h2 class="text-center text-4xl normal-case mb-5 text-blue font-bold">Support us</h2> <p class="text-center font-normal text-normal m-auto max-w-md mb-10">Ts.ED is under MIT-license and is an open-source project. Many thanks to our sponsors, partners and backers who contribute to promote and support our project!</p> <div class="flex flex-col items-center w-full"><h3 class="text-xl font-bold mb-10">Premium sponsors</h3> <div class="flex flex-wrap justify-center items-stretch pb-5 mb-8 w-full"><div class="w-1/2 sm:w-1/6 px-5 py-3"><a href="https://www.zenika.com" title="Zenika" target="_blank" rel="noopener noreferrer" class="link external partner-logo flex items-center h-full justify-center"><img src="https://zenika-website.cdn.prismic.io/zenika-website/4e73b102-9045-4cff-b098-a0625f7d10f8_logo_light.svg" style="max-height:150px;"></a></div><div class="w-1/2 sm:w-1/6 px-5 py-3"><a href="https://www.medayo.com" title="Medayo" target="_blank" rel="noopener noreferrer" class="link external partner-logo flex items-center h-full justify-center"><img src="https://avatars.githubusercontent.com/u/40989284?v=4" style="max-height:150px;"></a></div><div class="w-1/2 sm:w-1/6 px-5 py-3"><a href="https://weseek.co.jp/" title="Weseek" target="_blank" rel="noopener noreferrer" class="link external partner-logo flex items-center h-full justify-center"><img src="https://avatars.githubusercontent.com/u/6468105?v=4" style="max-height:150px;"></a></div><div class="w-1/2 sm:w-1/6 px-5 py-3"><a href="https://underscore-tech.homerun.co/" title="Underscore tech" target="_blank" rel="noopener noreferrer" class="link external partner-logo flex items-center h-full justify-center"><img src="https://images.opencollective.com/underscore-tech/1d50e46/logo/256.png" style="max-height:150px;"></a></div></div></div><div class="flex flex-col items-center w-full"><h3 class="text-xl font-bold mb-10">Partners</h3> <div class="flex flex-wrap justify-center items-stretch pb-5 mb-8 w-full"><div class="w-1/3 sm:w-1/6 px-5 py-3"><a href="https://schnell.digital/" title="schnell.digital" target="_blank" rel="noopener noreferrer" class="link external partner-logo flex items-center h-full justify-center"><img src="/partners/schnell.svg" style="max-height:90px;"></a></div></div></div> <h3 class="text-xl font-bold mb-10">Our backers</h3> <div class="flex flex-wrap justify-center items-stretch w-full"><div class="-m-5 mb-5"><ul class="reset-list flex flex-wrap items-center"></ul></div></div> <div class="mt-10 mb-5 text-center w-full"><a href="/support.html" title="" class="link internal w-full sm:w-1/4 md:w-1/6 mb-5 sm:mx-2 reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><!----> <span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
Become sponsor
</span></span></a> <a href="https://opencollective.com/tsed#backers" title="" target="_blank" rel="noopener noreferrer" class="link external w-full sm:w-1/3 md:w-1/6 mb-5 sm:mx-2 reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-blue border-blue text-white-button focus:bg-blue-active focus:border-blue-active
hover:bg-blue-active hover:border-blue-active focus:text-white-button-active hover:text-white-button-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
Become backer
</span></span> <!----></a> <a href="https://form.typeform.com/to/uJLP7anG" title="" target="_blank" rel="noopener noreferrer" data-mode="popup" class="link external w-full sm:w-1/3 md:w-1/6 sm:mx-2 typeform-share reset-link inline-flex flex-col items-stretch overflow-hidden text-base transition-colors
bg-button-white border-blue text-blue focus:bg-button-white-active focus:border-blue-active
hover:bg-button-white-active hover:border-blue-active focus:text-blue-active hover:text-blue-active
cursor-pointer border-1 border-solid rounded-medium shadow-none"><span class="flex justify-center items-center w-full font-bold px-4 py-1"><span class="m-1 text-center flex justify-center items-center">
Contact us
</span></span> <!----></a></div></div></div></div></div></div> </div></main> <!----> <footer class="relative z-2"><!----> <div class="px-5 md:px-10 m-auto bg-code-active relative"><div class="pt-5 pb-8 text-center text-white"><div class="flex items-center"><div class="flex-1 flex items-center justify-center"><a title="Github" href="https://github.com/tsedio/tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center text-xl py-4 mx-2"><i class="bx bxl-github"></i> </a><a title="Slack" href="https://api.tsed.io/rest/slack/tsedio/tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center text-xl py-4 mx-2"><i class="bx bxl-slack"></i> </a><a title="Twitter" href="https://twitter.com/TsED_io" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center text-xl py-4 mx-2"><i class="bx bxl-twitter"></i> </a><a title="StackOverflow" href="https://stackoverflow.com/search?q=tsed" target="_blank" rel="noopener noreferrer" class="p-1 hover:text-blue-active transition-all duration-500 ease-in-out flex flex align-center justify-center text-xl py-4 mx-2"><i class="bx bxl-stack-overflow"></i> </a></div> <div class="absolute top-0 right-0 pt-5 pr-8 pr-10"><div class="relative inline-flex w-auto"><!----> <span class="text-xs py-1 px-2 absolute right-0 rounded-medium rounded-bl-small bg-white text-blue" style="top:-12px;right:-28px;">0</span></div></div></div> <div class="w-full max-w-site m-auto"><div class="flex flex-col sm:flex-row text-center sm:text-left items-start content-center justify-between pt-5 sm:mb-5 sm:py-5"><div class="flex-1 w-full sm:w-auto mb-8 sm:mb-0"><h3 class="font-bold uppercase text-lg pb-4 transition-colors duration-300 ease-linear">
Discover
</h3> <ul class="transition-colors duration-300 ease-linear"><li class="py-2"><a href="/team.html" aria-current="page" class="link internal text-gray-light font-bold hover:text-blue-active"><!---->
Our team
</a></li><li class="py-2"><a href="https://form.typeform.com/to/uJLP7anG" target="_blank" rel="noopener noreferrer" aria-current="page" class="link external text-gray-light font-bold hover:text-blue-active">
Contact us
<!----></a></li></ul></div> <div class="flex-1 w-full sm:w-auto mb-8 sm:mb-0 sm:text-center"><h3 class="font-bold uppercase text-lg pb-4 transition-colors duration-300 ease-linear">
Help
</h3> <ul class="transition-colors duration-300 ease-linear"><li class="py-2"><a href="/tutorials/index.html" aria-current="page" class="link internal text-gray-light font-bold hover:text-blue-active"><!---->
Resources
</a></li><li class="py-2"><a href="https://api.tsed.io/rest/slack/tsedio/tsed" target="_blank" rel="noopener noreferrer" aria-current="page" class="link external text-gray-light font-bold hover:text-blue-active">
Chat with us
<!----></a></li><li class="py-2"><a href="/contributing.html" aria-current="page" class="link internal text-gray-light font-bold hover:text-blue-active"><!---->
Contribution guide
</a></li></ul></div> <div class="flex-1 w-full sm:w-auto mb-8 sm:mb-0 sm:text-right"><h3 class="font-bold uppercase text-lg pb-4 transition-colors duration-300 ease-linear">
Support
</h3> <ul class="transition-colors duration-300 ease-linear"><li class="py-2"><a href="https://github.com/tsedio/tsed/issues" target="_blank" rel="noopener noreferrer" aria-current="page" class="link external text-gray-light font-bold hover:text-blue-active">
Issues
<!----></a></li><li class="py-2"><a href="/support.html" aria-current="page" class="link internal text-gray-light font-bold hover:text-blue-active"><!---->
Sponsoring & donations
</a></li></ul></div></div></div> <div class="text-sm">
Copyright © 2016-2022 <a href="/license.html" class="text-blue font-bold hover:text-blue-active">MIT License</a> <span class="inline-block text-gray-light px-1">|</span> By
Lenzotti Romain
</div></div></div> </footer></div></div><div class="global-ui"></div></div>
<script src="/assets/js/app.926b1e9f.js" defer></script><script src="/assets/js/4.9da0d4f2.js" defer></script><script src="/assets/js/50.f0284917.js" defer></script><script src="/assets/js/5.a1f37254.js" defer></script>
</body>
</html>