Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ranjancse26/modernnft

The Modern NFT Digital Art Generator Project. Uses custom generative art algorithms for generating the NFT Artwork
https://github.com/ranjancse26/modernnft

Last synced: 2 months ago
JSON representation

The Modern NFT Digital Art Generator Project. Uses custom generative art algorithms for generating the NFT Artwork

Awesome Lists containing this project

README

        

# ModernNFT
The Modern NFT is a "Digital Art" Generator Project. Uses custom generative art algorithms for generating the NFT Artwork.

The following are the custom generators built as part of the library. You may extend the library to have more :)

1) ArtBlockGenerator
2) BotGenerator
3) FemaleAvatar Generator
4) GridyGenerator
5) IdenticonGenerator
6) IndoBitGeneratorCustom
7) IndoBitGeneratorStandard
8) ModernArtGenerator
9) SuperGirlGenerator
10) VoxalManGenerator

# Gitbook

https://app.gitbook.com/@ranjancse/s/scalable-nft-art-project/

# Goal

The goal or purpose of this project is to build a highly scalable NFT Generative Art using custom generative algorithms.

# Overview

The Modern.NFT project is a collection of scalable NFT Artwork Project created using C# .NET Core.

# Tools & Technologies

The following are the tools are technologies used

1) VS 2019 Community Edition
2) Inkspace
3) GIMP

# Behind the scene

The Modern Art for example is generated with the help of a base SVG image created using the Inkspace an open-source vector graphics tool. The program makes use of the below subset of SVG images. Each of the traits consists of a series of artwork and the generator is responsible for building the NFT Artwork by randomly picking the traits, applying the necessary background with the genetic color-coding technology.

## Genetic Color Coding Algorithm

The Genetic Color Coding Algo is based on the open source code - https://github.com/yetanotherchris/SimpleGeneticAlgorithm

Below is how we generate an unique RGB color

```
public static List Generate(int generationSize, int populationSize)
{
List colorCollection = new List();
World world = new World(generationSize, populationSize, 0, 0);
world.InitializePopulation();

foreach (var population in world.Population)
{
var splittedGenomes = population
.ToString()
.Replace(" ", "")
.SplitBy(8)
.ToList();

int R = Convert.ToInt32(
splittedGenomes[0].ToString().Replace(" ", ""),
2);
int G = Convert.ToInt32(
splittedGenomes[1].ToString().Replace(" ", ""),
2);
int B = Convert.ToInt32(
splittedGenomes[2].ToString().Replace(" ", ""),
2);

colorCollection.Add(ColorToHex(Color.FromArgb(R, G, B)));
}

return colorCollection;
}
```

# How to generate the Modern NFT Art?

You will be seeing how to generate Modern NFT Artwork based on the concept of Generators.
The following code snippet generates the Modern Art with a count of 50 for example. As you can see below, a Geometric background is being applied with the traits of your interest.

```
IModernArtGenerator modernArtGenerator = new ModernArtGenerator(500, 500);
modernArtGenerator.Generate(Guid.NewGuid().ToString(), 50,
GeometricStyle.Geometric2, null,
withGlass: true,
withMask: false,
withSmoke: true,
withHat: false);
```

# Modern Art Traits

# How to Run?

Set as a Startup Project on "Modern.NFT.Console" Project. It's a console application consisting of a "Program.cs" that has all the logic for generating the Modern NFT Art. Control F5 or Debug the project to know more.

# Inspiration

This project is inspired by various other open source work.

1) https://avatars.dicebear.com/
2) https://www.flaticon.com/
3) https://github.com/goabstract/Awesome-Design-Tools
4) https://github.com/ubik23/charactercreator

# Commercial Usage

This source code is copyrighted to Ranjan Dailata.

Please note that the code is open source. You are free to use it. However, you need to get an explicit license to use for commercial purpose. You may take an owernship or rights to publish to NFT Platform with an agreed upon terms and conditions.