Skip to content

Commit

Permalink
Nuget Release prep
Browse files Browse the repository at this point in the history
  • Loading branch information
thygrrr committed Oct 29, 2024
1 parent 84f4dcb commit 6f46915
Show file tree
Hide file tree
Showing 4 changed files with 221 additions and 3 deletions.
6 changes: 3 additions & 3 deletions fennecs/fennecs.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<PackageId>fennecs</PackageId>
<Version>0.5.11-beta</Version>
<Version>0.5.12-beta</Version>
<Title>fennecs</Title>
<Product>fennecs Entity-Component System</Product>
<Authors>Moritz Voss, Aaron Winter</Authors>
Expand Down Expand Up @@ -51,8 +51,8 @@
</ItemGroup>

<ItemGroup>
<None Include="../www/nuget.md" Pack="true" PackagePath="\"/>
<None Include="../www/logos/fennecs-icon-nuget.png">
<None Include="../nuget/nuget.md" Pack="true" PackagePath="\"/>
<None Include="../nuget/fennecs-icon-nuget.png">
<PackagePath>.</PackagePath>
<Pack>True</Pack>
<Link>fennecs-icon-nuget.png</Link>
Expand Down
Binary file added nuget/fennecs-icon-nuget.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
166 changes: 166 additions & 0 deletions nuget/fennecs-logo-nuget.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 52 additions & 0 deletions nuget/nuget.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
![fennecs logo](https://raw.githubusercontent.com/outfox/fennecs/main/nuget/fennecs-logo-nuget.svg)

[**fenn**ecs](https://fennecs.tech) is a lightweight, performant, and expressive ECS library for game & simulations written in modern C#.

It's designed to be easy to use, with minimal boilerplate and no code generation or reflection required.

## ๐Ÿš€ Quickstart

๐Ÿ“ฆ`>` `dotnet add package fennecs`

Here's a simple example to get you started:

```cs
// Declare a component record. (we can also use most existing value & reference types)
record struct Velocity(Vector3 Value);

// Create a world. (fyi, World implements IDisposable)
var world = new fennecs.World();

// Spawn an entity into the world with a choice of components. (or add/remove them later)
var entity = world.Spawn().Add<Velocity>();

// Queries are cached & we use ultra-lightweight Stream Views to feed data to our code!
var stream = world.Query<Velocity>().Stream();

// Run code on all entities in the query. (exchange 'For' with 'Job' for parallel processing)
stream.For(
uniform: DeltaTime * 9.81f * Vector3.UnitZ,
static (Vector3 uniform, ref Velocity velocity) =>
{
velocity.Value -= uniform;
}
);
```

## ๐ŸŒŸ Key Features

- Modern C# codebase targeting .NET 8
- Archetype-based storage for cache-friendly iteration
- Expressive, queryable relations between entities and components
- Easy parallelization of workloads across and within archetypes
- Zero codegen and minimal boilerplate

## ๐Ÿ“š Learn More

Check out the [fennecs website](https://fennecs.tech) for:

- ๐Ÿ“– API documentation
- ๐Ÿณ Cookbook with tasty recipes
- ๐ŸŽฎ Demo projects to get inspired

Happy coding! ๐ŸฆŠโค๏ธ

0 comments on commit 6f46915

Please sign in to comment.