fyziktom / VirtualEconomyFramework

Framework for economy applications
https://veframework.com/
MIT License
24 stars 7 forks source link

Demo aplikace zobrazovací stránky pro kapelu #171

Open fyziktom opened 1 year ago

fyziktom commented 1 year ago

Potřebujeme vytvořit jednoduché demo zobrazovací stránky kapely.

Základní funkce:

Jednotlivé funkcionality by měly být implementovány postupně. Tedy jako první bude jen zobrazení videí a hudby.

Aplikace bude velmi podobná aplikaci PublishingDisplay. Nicméně namísto Coruzant NFT bude zobrazovat Post NFT a Music NFT. Do budoucna též Event NFT a Ticket NFT.

Aby se zrychlilo načítání stránky, tak jsou u aplikace PublishingDisplay izolovány jen ty třídy kolem NFT, které jsou potřeba. VEDriversLite obsahují i závislosti na knihovny ohledně podpisů transakcí, apod. které zde nejsou potřeba.

Vytváření a správa obsahu bude probíhat přes VENFT App. Do té se musí přidat ještě mintování Music NFT. Pro mintování eventů a lístků lze využít Demo.EventAndTickets.

fyziktom commented 1 year ago

Základ pro demo je dosupný zde ve větvi 171-demo-music-band-display.

Jedná se o jednoduchou aplikaci po vzoru PublishingDisplay.

Obsahuje tři základní stránky:

Aplikace používá Blazorise komponenty. Nicméně některé styly jsou přepsány/doplněny zde.

Aplikace má konfigurační soubor pomocí kterého je možné nadefinovat základní parametry či měnit jednoduché texty a linky bez nutnosti rekompilace aplikace. Příklad využití konfigurace je například zde, kde dochází k nastavení Neblio adresy ze které se budou číst NFTčka. Po načtení je možné si kdekoliv na načtená data přistoupit skrze službu AppData. K dispozici jsou předfiltrované seznamy jen s Post NFT či Music NFT. Oba seznamy je možné získat i v "Ranom" verzích, kdy se vyberou náhodná NFT. Použití je například zde.

K zobrazení konkrétního postu slouží stránka Post.razor. Tato dokáže převzít v url parmetr Utxo a na základě toho načíst a zobrazit dané NFT. Tímto je možné sdílet s někým odkaz na konkrétní NFT. Sestavení odkazu na sdílení je například zde.

Zobrazení detailů NFT řeší komponenta PostDetails.razor. Ta i zjistí, jestli dané NFT obsahuje video, pokud ano, tak tak zobrazí video. Jinak se pokusí zobrazit obrázek.

Nyní se demo odkazuje na adresu s nevhodnými daty pro tento příklad, ale ta bude brzo vyměněna za adresu s NFTčky, kde jsou primárně videa.