99 < link href ="favicon.ico " rel ="icon ">
1010 < link href ="favicon.ico " rel ="apple-touch-icon ">
1111 < link href ="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i,700,700i|Raleway:300,300i,400,400i,600,600i,700,700i " rel ="stylesheet ">
12- < link href ="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.0/css/bootstrap.css " rel ="stylesheet ">
12+ < link href ="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.0/css/bootstrap.min. css " rel ="stylesheet ">
1313 < link href ="
https://unpkg.com/[email protected] /css/boxicons.min.css "
rel ="
stylesheet "
> 1414 < link href ="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.0/styles/default.min.css " rel ="stylesheet ">
1515 < link href ="https://cdnjs.cloudflare.com/ajax/libs/aos/2.3.4/aos.css " rel ="stylesheet ">
2222 < div class ="row ">
2323 < div class ="col-lg-7 pt-5 pt-lg-0 order-2 order-lg-1 ">
2424 < h1 > JsonApiDotNetCore</ h1 >
25- < h2 > A framework for building < a href ="https://jsonapi.org/ " target ="_blank "> JSON:API</ a > compliant REST APIs using .NET Core and Entity Framework Core. Includes support for < a href ="https://jsonapi.org/ext/atomic/ " target ="_blank "> Atomic Operations</ a > .</ h2 >
25+ < h2 >
26+ A framework for building < a href ="https://jsonapi.org/ " target ="_blank "> JSON:API</ a > compliant REST APIs using .NET Core and Entity Framework Core.
27+ Includes support for < a href ="https://jsonapi.org/ext/atomic/ " target ="_blank "> Atomic Operations</ a > .
28+ </ h2 >
2629 < a href ="#about " class ="btn-get-started scrollto "> Read more</ a >
2730 < a href ="../../getting-started/install.html " class ="btn-get-started "> Getting started</ a >
2831 < a href ="https://github.com/json-api-dotnet/JsonApiDotNetCore/ " target ="_blank " class ="btn-get-started "> Contribute on GitHub</ a >
@@ -43,12 +46,13 @@ <h2>A framework for building <a href="https://jsonapi.org/" target="_blank">JSON
4346 < div class ="col-lg-6 pt-5 pt-lg-0 ">
4447 < h3 data-aos ="fade-up "> Objectives</ h3 >
4548 < p data-aos ="fade-up " data-aos-delay ="100 ">
46- The goal of this library is to simplify the development of APIs that leverage the full range of features provided by the < a href ="https://jsonapi.org/ " target ="_blank "> JSON:API</ a > specification.
49+ The goal of this library is to simplify the development of APIs that leverage the full range of features
50+ provided by the < a href ="https://jsonapi.org/ " target ="_blank "> JSON:API</ a > specification.
4751 You just need to focus on defining the resources and implementing your custom business logic.
4852 </ p >
4953 < div class ="row ">
5054 < div class ="col-md-6 " data-aos ="fade-up " data-aos-delay ="100 ">
51- < i class =' bx bxs-package ' > </ i >
55+ < i class =" bx bxs-package " > </ i >
5256 < h4 > Eliminate boilerplate</ h4 >
5357 < p > We strive to eliminate as much boilerplate as possible by offering out-of-the-box features such as sorting, filtering and pagination.</ p >
5458 </ div >
@@ -69,28 +73,28 @@ <h2>Features</h2>
6973 < p > The following features are supported, from HTTP all the way down to the database</ p >
7074 </ div >
7175 < div class ="row ">
72- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="100 " id =' filter ' >
76+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="100 " id =" filter " >
7377 < div class ="icon-box ">
7478 < div class ="icon "> < i class ="bx bxs-filter-alt "> </ i > </ div >
7579 < h4 class ="title "> Filtering</ h4 >
7680 < p class ="description "> Perform compound filtering using the < code > filter</ code > query string parameter</ p >
7781 </ div >
7882 </ div >
79- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="200 " id =' sort ' >
83+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="200 " id =" sort " >
8084 < div class ="icon-box ">
81- < div class ="icon "> < i class ="bx bx-sort-z-a "> </ i > </ div >
85+ < div class ="icon "> < i class ="bx bx-sort-a-z "> </ i > </ div >
8286 < h4 class ="title "> Sorting</ h4 >
8387 < p class ="description "> Order resources on one or multiple attributes using the < code > sort</ code > query string parameter</ p >
8488 </ div >
8589 </ div >
86- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="300 " id =' pagination ' >
90+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="300 " id =" pagination " >
8791 < div class ="icon-box ">
8892 < div class ="icon "> < i class ="bx bx-note "> </ i > </ div >
8993 < h4 class ="title "> Pagination</ h4 >
9094 < p class ="description "> Leverage the benefits of paginated resources with the < code > page</ code > query string parameter</ p >
9195 </ div >
9296 </ div >
93- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="400 " id =' selection ' >
97+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="400 " id =" selection " >
9498 < div class ="icon-box ">
9599 < div class ="icon "> < i class ="bx bxs-select-multiple "> </ i > </ div >
96100 < h4 class ="title "> Sparse fieldset selection</ h4 >
@@ -99,30 +103,30 @@ <h4 class="title">Sparse fieldset selection</h4>
99103 </ div >
100104 </ div >
101105 < div class ="row ">
102- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="100 " id =' include ' >
106+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="500 " id =" include " >
103107 < div class ="icon-box ">
104108 < div class ="icon "> < i class ="bx bxs-vector "> </ i > </ div >
105109 < h4 class ="title "> Relationship inclusion</ h4 >
106110 < p class ="description "> Side-load related resources of nested relationships using the < code > include</ code > query string parameter</ p >
107111 </ div >
108112 </ div >
109- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="100 " id =' security ' >
113+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="600 " id =" security " >
110114 < div class ="icon-box ">
111- < div class ="icon "> < i class =' bx bxs-lock ' > </ i > </ div >
115+ < div class ="icon "> < i class =" bx bxs-lock " > </ i > </ div >
112116 < h4 class ="title "> Security</ h4 >
113- < p class ="description "> Configure permissions, such as view/create/change/sort/filter of attributes and relationships</ p >
117+ < p class ="description "> Configure permissions, such as viewing, creating, modifying, sorting and filtering of attributes and relationships</ p >
114118 </ div >
115119 </ div >
116- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="100 " id =' validation ' >
120+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="700 " id =" validation " >
117121 < div class ="icon-box ">
118- < div class ="icon "> < i class =' bx bx-check-double ' > </ i > </ div >
122+ < div class ="icon "> < i class =" bx bx-check-double " > </ i > </ div >
119123 < h4 class ="title "> Validation</ h4 >
120- < p class ="description "> Validate incoming requests using built-in ASP.NET Core < code > ModelState </ code > validation , which works seamlessly with partial updates</ p >
124+ < p class ="description "> Validate incoming requests using built-in ASP.NET Model Validation , which works seamlessly with partial updates</ p >
121125 </ div >
122126 </ div >
123- < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="200 " id =' customizable ' >
127+ < div feature class ="col-md-6 col-lg-3 d-flex align-items-stretch " data-aos ="zoom-in " data-aos-delay ="800 " id =" customizable " >
124128 < div class ="icon-box ">
125- < div class ="icon "> < i class =' bx bxs-category-alt ' > </ i > </ div >
129+ < div class ="icon "> < i class =" bx bxs-category-alt " > </ i > </ div >
126130 < h4 class ="title "> Customizable</ h4 >
127131 < p class ="description "> Use various extensibility points to intercept and run custom code, besides just model annotations</ p >
128132 </ div >
@@ -139,7 +143,7 @@ <h2>Example usage</h2>
139143 < div class ="row ">
140144 < div code-example class ="col-md-12 col-lg-12 d-flex d-flex justify-content-center " data-aos ="zoom-in " data-aos-delay ="100 ">
141145 < div class ="icon-box code-example ">
142- < div class ="icon "> < i class =' bx bx-detail ' > </ i > </ div >
146+ < div class ="icon "> < i class =" bx bx-detail " > </ i > </ div >
143147 < h4 class ="title "> Resource</ h4 >
144148 < pre >
145149< code > #nullable enable
@@ -179,16 +183,16 @@ <h4 class="title">Resource</h4>
179183 < div class ="row ">
180184 < div code-example class ="col-md-12 col-lg-12 d-flex d-flex justify-content-center " data-aos ="zoom-in " data-aos-delay ="100 ">
181185 < div class ="icon-box code-example ">
182- < div class ="icon "> < i class =' bx bx-message-rounded-detail ' > </ i > </ div >
186+ < div class ="icon "> < i class =" bx bx-message-rounded-detail " > </ i > </ div >
183187 < h4 class ="title "> Request</ h4 >
184188 < pre > < code > GET /articles?filter=contains(summary,'web')&sort=-lastModifiedAt&fields[articles]=title,summary&include=author HTTP/1.1</ code > </ pre >
185189 </ div >
186190 </ div >
187191 </ div >
188192 < div class ="row ">
189- < div code-example class ="col-md-12 col-lg-12 d-flex d-flex justify-content-center " data-aos ="zoom-in " data-aos-delay ="100 ">
193+ < div code-example class ="col-md-12 col-lg-12 d-flex d-flex justify-content-center " data-aos ="zoom-in " data-aos-delay ="200 ">
190194 < div class ="icon-box code-example ">
191- < div class ="icon "> < i class =' bx bx-message-rounded-detail bx-flip-horizontal ' > </ i > </ div >
195+ < div class ="icon "> < i class =" bx bx-message-rounded-detail bx-flip-horizontal " > </ i > </ div >
192196 < h4 class ="title "> Response</ h4 >
193197 < pre >
194198< code > {
@@ -259,15 +263,15 @@ <h4 class="title">Response</h4>
259263 < h2 > Sponsors</ h2 >
260264 </ div >
261265 < div class ="row justify-content-center ">
262- < div sponsor class ="col-md-4 col-lg-3 d-flex align-items-stretch justify-content-center aos-init aos-animate " data-aos =" zoom-in " data-aos-delay =" 100 " id ="jetbrains ">
263- < div class ="icon-box d-flex align-items-center ">
266+ < div sponsor class ="col-md-4 col-lg-3 d-flex align-items-stretch justify-content-center aos-init aos-animate " id ="jetbrains ">
267+ < div class ="icon-box d-flex align-items-center " data-aos =" zoom-in " data-aos-delay =" 100 " >
264268 < div class ="icon ">
265269 < img src ="https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg " alt ="JetBrains Logo " style ="width:150px ">
266270 </ div >
267271 </ div >
268272 </ div >
269- < div sponsor class ="col-md-4 col-lg-3 d-flex align-items-stretch justify-content-center aos-init aos-animate " data-aos =" zoom-in " data-aos-delay =" 100 " id ="araxis ">
270- < div class ="icon-box d-flex align-items-center " style ="background-color: rgb(116, 125, 139) ">
273+ < div sponsor class ="col-md-4 col-lg-3 d-flex align-items-stretch justify-content-center aos-init aos-animate " id ="araxis ">
274+ < div class ="icon-box d-flex align-items-center " style ="background-color: rgb(116, 125, 139) " data-aos =" zoom-in " data-aos-delay =" 200 " >
271275 < div class ="icon ">
272276 < img src ="https://www.araxis.com/theme/37/img/araxis-logo-lg.svg " alt ="Araxis Logo " style ="width:150px ">
273277 </ div >
0 commit comments