firestorm - Firestorm.Engine.Additives 0.9.3-alpha.19
Useful extensions and basic implementations that'll help building fuel for Firestorm.Engine.
PM> Install-Package Firestorm.Engine.Additives -Version 0.9.3-alpha.19 -Source https://www.myget.org/F/firestorm/api/v3/index.json
> nuget.exe install Firestorm.Engine.Additives -Version 0.9.3-alpha.19 -Source https://www.myget.org/F/firestorm/api/v3/index.json
> dotnet add package Firestorm.Engine.Additives --version 0.9.3-alpha.19 --source https://www.myget.org/F/firestorm/api/v3/index.json
<PackageReference Include="Firestorm.Engine.Additives" Version="0.9.3-alpha.19" />
Copy to clipboard
source https://www.myget.org/F/firestorm/api/v3/index.json
nuget Firestorm.Engine.Additives ~> 0.9.3-alpha.19
Copy to clipboard
> choco install Firestorm.Engine.Additives --version 0.9.3-alpha.19 --source https://www.myget.org/F/firestorm/api/v2
Import-Module PowerShellGet
Register-PSRepository -Name "firestorm" -SourceLocation "https://www.myget.org/F/firestorm/api/v2"
Install-Module -Name "Firestorm.Engine.Additives" -RequiredVersion "0.9.3-alpha.19" -Repository "firestorm" -AllowPreRelease
Copy to clipboard
Firestorm
Firestorm is a REST API framework for .NET. The aim is to provide a neat and easy ways to write standardised APIs with more of the leg-work taken care of.
Using Stems to describe your API
public class CharactersStem : Stem<Character>
{
[Get, Identifier]
public static Expression Id => Expression(p => p.Id);
[Get]
public static Expression Name => Expression(p => p.FirstName + " " + p.LastName);
}
Exposes RESTful endpoints
GET /characters/123
{
"id": 123,
"name": "Eddard Stark"
}
Features
Clean. Lets you write neat and concise code to describe your API and exposes lightweight, human-readable responses.
- Natural URL paths e.g.
/characters/123/birthplace/name. - To-the-point querystrings e.g.
?status=alive&sort=name+asc&page=2. - Uncluttered responses without extra metadata.
- Natural URL paths e.g.
Powerful. Provides querying capabilities that combine database queries and application code.
- Calculate an
agefield fromBirthDatein your queries. - Set a
namefield by splitting intoFirstNameandLastNamebefore saving. - Raise events on a message bus using dependency injection.
- Calculate an
Configurable. Customise your conventions, response structure, verb strategies to suit your API needs. Integrate with your web host, ORM and IoC to fit nicely in your solution.
- Include HTTP
Linkheaders in pagination responses. - Configure
PUTorPATCHstrategy for partial updates. - Allow
camelCaseorsnake_caseconventions in your responses.
- Include HTTP
You can read more in the documentation, jump straight into the tutorials or check out the samples.
Install
Firestorm is available from the GitHub repository and as NuGet Packages.
PM> Install-Package Firestorm.Endpoints
PM> Install-Package Firestorm.Stems
PM> Install-Package Firestorm.AspNetCore2
PM> Install-Package Firestorm.EntityFrameworkCore2
Prerelease packages are available from the MyGet feed.
See the Installation section for more detailed setup information.
About
Firestorm is a bit of an experiment that grew into something I feel other developers could use. It was never a clearly defined project, but I decided to set some milestones and make it my first open-source project.
It's still in active development. There are a lot of features I want to add!
Copyright
Copyright © 2017-2019 Connell Watkins
License
Firestorm is licensed under MIT. Refer to LICENSE.txt for detailed information.
-
.NETFramework 4.5.2
- Firestorm.Engine.Core (>= 0.9.3-alpha.19)
-
.NETStandard 2.0
- Firestorm.Engine.Core (>= 0.9.3-alpha.19)
- .NETFramework 4.5.2: 4.5.2.0
- .NETStandard 2.0: 2.0.0.0
OwnersConnell W |
AuthorsConnell Watkins |
Project URLhttps://github.com/connellw/Firestorm |
LicenseMIT |
Tagsfirestorm rest engine linq fuel additives |
Info0 total downloads |
| 0 downloads for version 0.9.3-alpha.19 |
| Download (25.45 KB) |
| Found on the current feed only |
Package history
| Version | Size | Last updated | Downloads | Mirrored? | |||
|---|---|---|---|---|---|---|---|
|
|
0.9.4-alpha-00005 | 25.77 KB | Sun, 14 Apr 2019 23:01:55 GMT | 0 |
|
||
|
|
0.9.4-alpha-00004 | 25.78 KB | Thu, 28 Feb 2019 21:59:32 GMT | 0 |
|
||
|
|
0.9.4-alpha-00003 | 25.78 KB | Wed, 20 Feb 2019 23:59:03 GMT | 0 |
|
||
|
|
0.9.4-alpha-00002 | 25.75 KB | Sun, 17 Feb 2019 22:27:39 GMT | 0 |
|
||
|
|
0.9.4-alpha-00001 | 25.75 KB | Mon, 21 Jan 2019 21:38:52 GMT | 0 |
|
||
|
|
0.9.3 | 25.46 KB | Wed, 16 Jan 2019 01:24:37 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00062 | 25.52 KB | Tue, 15 Jan 2019 01:12:06 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00060 | 25.52 KB | Mon, 14 Jan 2019 22:15:19 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00059 | 25.52 KB | Mon, 14 Jan 2019 21:00:48 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00058 | 25.51 KB | Mon, 14 Jan 2019 00:14:21 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00057 | 25.52 KB | Sun, 13 Jan 2019 23:34:09 GMT | 0 |
|
||
|
|
0.9.3-todobacken-00054 | 25.52 KB | Sun, 13 Jan 2019 19:51:21 GMT | 0 |
|
||
|
|
0.9.3-alpha.38 | 25.47 KB | Sun, 13 Jan 2019 16:58:01 GMT | 0 |
|
||
|
|
0.9.3-alpha.37 | 25.45 KB | Fri, 11 Jan 2019 01:58:05 GMT | 0 |
|
||
|
|
0.9.3-alpha.32 | 25.45 KB | Wed, 09 Jan 2019 22:11:36 GMT | 0 |
|
||
|
|
0.9.3-alpha.19 | 25.45 KB | Wed, 09 Jan 2019 01:52:13 GMT | 0 |
|