<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Kamil Sołtys</title>
    <description>The latest articles on Forem by Kamil Sołtys (@rufusmotus).</description>
    <link>https://forem.com/rufusmotus</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F860090%2Fdccecfaf-3de9-4f07-9d31-3060bc2de863.jpeg</url>
      <title>Forem: Kamil Sołtys</title>
      <link>https://forem.com/rufusmotus</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/rufusmotus"/>
    <language>en</language>
    <item>
      <title>GlitchyNFT - Appwrite Hackathon</title>
      <dc:creator>Kamil Sołtys</dc:creator>
      <pubDate>Tue, 10 May 2022 10:06:11 +0000</pubDate>
      <link>https://forem.com/rufusmotus/glitchynft-appwrite-hackathon-4c32</link>
      <guid>https://forem.com/rufusmotus/glitchynft-appwrite-hackathon-4c32</guid>
      <description>&lt;h3&gt;
  
  
  Overview of My Submission
&lt;/h3&gt;

&lt;p&gt;GlitchyNFT is a creator which allowed you to create your own 'NFT' from prepared assets. Why creator for 'NFT'? We all love them (right?)!&lt;/p&gt;

&lt;h3&gt;
  
  
  Techstack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/vuejs/vue" rel="noopener noreferrer"&gt;Vue&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/vuejs/pinia" rel="noopener noreferrer"&gt;Pinia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/microsoft/TypeScript/" rel="noopener noreferrer"&gt;Typescript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/appwrite/appwrite" rel="noopener noreferrer"&gt;Appwrite&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Assets resource
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://craftpix.net/freebies/" rel="noopener noreferrer"&gt;Craftpix&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Submission Category:
&lt;/h3&gt;

&lt;h4&gt;
  
  
  Web2 Wizards
&lt;/h4&gt;

&lt;h3&gt;
  
  
  Link to Code
&lt;/h3&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fassets.dev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/RufusMotus" rel="noopener noreferrer"&gt;
        RufusMotus
      &lt;/a&gt; / &lt;a href="https://github.com/RufusMotus/glitchynft" rel="noopener noreferrer"&gt;
        glitchynft
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      GlitchyNFT is a creator which allowed you to create your own 'NFT' from prepared assets.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;GlitchyNFT&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;GlitchyNFT is a creator which allowed you to create your own 'NFT' from prepared assets. Why creator for 'NFT'? We all love them (right?)! Project was created for &lt;a href="https://dev.to/devteam/announcing-the-appwrite-hackathon-on-dev-1oc0" rel="nofollow"&gt;Appwrite Hackathon on Dev.to&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Techstack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/vuejs/vue" rel="noopener noreferrer"&gt;Vue&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/vuejs/pinia" rel="noopener noreferrer"&gt;Pinia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/microsoft/TypeScript/" rel="noopener noreferrer"&gt;Typescript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/appwrite/appwrite" rel="noopener noreferrer"&gt;Appwrite&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Assets resource&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://craftpix.net/freebies/" rel="nofollow noopener noreferrer"&gt;Craftpix&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Missing functionalities due to lack of time&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;auction house functions&lt;/li&gt;
&lt;li&gt;liking GlitchyNFTs&lt;/li&gt;
&lt;li&gt;viewing GlitchyNFTs of different users&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Screenshots&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/RufusMotus/glitchynft/doc/explorer.png"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRufusMotus%2Fglitchynft%2Fdoc%2Fexplorer.png" alt="Explorer view"&gt;&lt;/a&gt;
&lt;a rel="noopener noreferrer" href="https://github.com/RufusMotus/glitchynft/doc/creator.png"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRufusMotus%2Fglitchynft%2Fdoc%2Fcreator.png" alt="Creator view"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Setup&lt;/h1&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;#1 Prerequisites:&lt;/h3&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Appwrite is running&lt;/li&gt;
&lt;li&gt;Appwrite CLI is installed&lt;/li&gt;
&lt;li&gt;you are logged into Appwrite CLI&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;#2 Appwrite&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;Init project in the root folder&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;appwrite init project
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;when ask to override say &lt;code&gt;yes&lt;/code&gt;, choose &lt;code&gt;Create a new Appwrite project&lt;/code&gt; and follow the rest of the prompts&lt;/p&gt;
&lt;p&gt;to create collections run&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;appwrite deploy collection
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;and select all of the collections&lt;/p&gt;
&lt;p&gt;copy &lt;code&gt;projectId&lt;/code&gt; from the &lt;code&gt;appwrite.json&lt;/code&gt;, replace &lt;code&gt;PROJECT_ID&lt;/code&gt; with copied &lt;code&gt;projectId&lt;/code&gt; and run&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;appwrite projects createKey --projectId PROJECT_ID --name APIKey --scopes documents.write
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;copy &lt;code&gt;secret&lt;/code&gt; from the promp and paste it in…&lt;/p&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/RufusMotus/glitchynft" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  Screenshots
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxkn9ec9pk2b5cvxkwyhl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxkn9ec9pk2b5cvxkwyhl.png" alt="Explorer view" width="800" height="557"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwgosm5iw7p0zg3krf37z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwgosm5iw7p0zg3krf37z.png" alt="Creator view" width="800" height="557"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Problems during development
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Appwrite has problem with serving SVG files (CORB error in Chrome) that's why everything is base64&lt;/li&gt;
&lt;li&gt;function for creating an attribute in the collection (server side) resolves before the attribute is created which isn't convenient, I would rather wait a little longer than have to check recursively if the attribute is available (which doesn't work too well)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Conclusions
&lt;/h3&gt;

&lt;p&gt;I had a lot of fun participating in this hackathon! 😄 Appwrite is a really great tool that I followed for some time now but haven't had the occasion to try out till now. Also, this was my first hackathon ever and this is my first post ever on Dev.to so Hello everyone! 🥳&lt;/p&gt;

</description>
      <category>appwritehack</category>
      <category>vue</category>
      <category>typescript</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
