Peera.

Articles

Educational materials & tutorials.

Posts

36
  • Article
    Sepolia testnet requires high gas fee

    hi, iam new to this web3 development i started cyfrin updraft course couple of weeks ago. iam trying to follow the instructor and deploy on sepolia testnet but iam getting high gas fee of about 0.4 eth, what should i do please?

    • Cyfrin Updraft
    • Foundry
    • Solidity
    • Smart Contract
    • Gas
    0
  • Article
    How to use Peeranha bot?

    How to use Peeranha bot?

    • Telegram bot
    1
  • Peeranha Mod.Peera.
    ForPeeranha MetaFeb 12, 2024
    Article
    How to enable Peeranha bot in Slack

    Peeranha has bots for Telegram, Discord and Slack. Those bots were created to streamline knowledge process and facilitate education and support of your community. We are going to cover enabling all of the bot's functionality in Slack First step: adding the bot to your Workspace. Open link. Install app to your workspace. If you know your workspace URL, enter it or click Find your workspaces and follow Slack's instructions. Bot is added to Slack. Add bot to the channel where you want to receive notifications: right click Peeranha Bot, select View app details. Peeranha Bot window opens. Click Add this app to a channel. Select a channel from the drop-down list. Use /subscribe command in the channel where bot was added to start receiving notifications. Second step: Workspace configuration 📢 *Important: *If the administrator accidentally selects a different community after configuring all the settings for the group, all previous settings will be lost. The community and its tags need to be reconfigured again. In order to avoid any disruption, please take care when making changes. The administrator should set all necessary configurations for a workspace: a community where users will publish posts and their tags. The configuration for the workspace may be set within any channel. To view all the available commands and their description: Desktop (Windows, MacOS) ✔️ Go to Apps > Peeranha bot > About ✔️ Hover over Peeranha Bot name in a channel, you see some of the starting commands. To view a full list click Go to App. You are directed to Apps section , then click About. Mobile (Android, iOS) ✔️ Go to Apps > Peeranha bot > About ✔️ Tap the Peeranha Bot name in a channel, you see a list of commands. Next: To set community, Administrator runs /config command. A message appears with the Select button. The administrator clicks Select and chooses a community from the dropdown list. The administrator selects the tags that will be assigned to posts published from the workspace. Once the configuration is complete, the administrator gets a confirmation. Users can create posts using the bot. Third step: Channel configuration (optional) Important: for any interaction with the bot in a Slack channel, make sure that Peeranha bot has been added to that channel. Click View members of this channel > Integrations > Apps > Add apps > Peeranha bot > Add Run the command /chatconfig in any channel. A message appears with the Select tags button. Click Select tags. From the dropdown select tags that will be assigned to posts published on this channel and click Confirm. Once the configuration is complete, the administrator gets a confirmation. Users can create posts using the bot. Fourth step: Enabling Autoreplies Run the command /configautoreplies in any channel where you want to enable autoreplies. A message appears with the Select communites button. Click Select communities. From the dropdown select your community that will be used as a source of information and click Confirm. Once the configuration is complete, the administrator gets a confirmation. Bot starts replying to questions of the users automatically.

    • Slack bot
    • tutorial
    1
  • Article
    How to Ensure Cryptocurrency Truly Belongs to You

    Summary “No keys, no coins” means that you must possess the associated private key of your funds. Only the person who has the private key can decide how to use the associated cryptocurrency - if you don’t control the private key, then you are entrusting your cryptocurrency to a third party. If you truly own your private key, you have complete control over the use of your funds. Owning the private key also means being responsible for its security - our device is designed for this purpose. What is “Your Private Key”? Similar to a bank account, cryptocurrency is sent to a receiving address, technically known as a public key. When others send you Bitcoin, it goes to your public key. The public key is so named because sharing it with anyone does not affect the cryptocurrency. However, the public key is associated with another key - the private key. This key is absolutely crucial. Anyone who obtains the private key can access the funds on the associated public key. Simply put, the private key is like a password - a way to verify if you are the true owner. When we say “no keys, no coins,” we are referring to your private key. The Difference Between Access and Ownership When withdrawing from an exchange, you’ll notice that withdrawal of your cryptocurrency requires the exchange's approval and there’s a daily limit. This indicates that even though the coins are visible in your account, they are actually stored in the exchange's wallet. If the exchange faces security issues, you might not be able to withdraw your coins. In other words, when your coins are on a centralized platform like an exchange, they don’t truly belong to you. Why is it Important to Own Your Keys? Money is hard-earned, and if stored on a centralized platform, the platform decides how you can use it. Moreover, if the centralized platform encounters any technical issues, you essentially lose access to your cryptocurrency. In short: as long as you don’t own the keys, you don’t have financial freedom, and your funds are still at the mercy of others. Most importantly, you cannot control the security of the platform’s system - you are outsourcing the security of your cryptocurrency to them. Unfortunately, over the years, major hacker attacks have resulted in the theft of cryptocurrencies worth up to 2 billion USD. The situation is entirely different if you own the private key. By owning the private key, you set the rules. No one else can tell you what you can or cannot do with your own cryptocurrency. By controlling your own keys, you truly own your coins and can enjoy financial freedom. However, controlling your own keys also comes with an important responsibility: You must ensure that you are the sole possessor of these private keys. If someone else manages to get your private key, they can access and take away your cryptocurrency. UnionKey: Key, Coin, NFT, Security High Security: UnionKey uses a hardware cold wallet approach, storing the private key in an offline encrypted chip, away from online threats. This physical isolation makes it difficult for hackers to obtain users' private keys, thereby protecting the security of their digital assets. Transparency of Open Source Code: UnionKey’s code is open source, allowing anyone to review and verify it. This transparency increases users' trust in the wallet's security and also promotes community participation and maintenance.

    • blockchain
    • cryptocurrency
    1
  • Article
    Static vs. Dynamic Web Development

    Understanding Static Web Development Definition and Characteristics Static web development involves creating web pages with fixed content, which remains unchanged unless manually edited by the developer. Think of it like a printed brochure; once it's printed, the content stays the same until the next print run. Advantages Speed: Static sites load faster since there's no need to fetch data from databases. Security: With fewer components, the risk of vulnerabilities decreases. Simplicity: Easier to develop and deploy, making it ideal for small-scale projects. Limitations Limited Interactivity: Interaction with users is minimal. Updates Require Coding: Any changes necessitate manual coding and redeployment. Delving into Dynamic Web Development Definition and Characteristics Dynamic web development involves creating sites where content can change based on user interactions, database queries, or other external data sources. Imagine a live concert that adjusts its playlist based on the audience's mood! Advantages Interactivity: Offers a rich user experience with interactive elements. Easy Content Management: Content updates can be made via a content management system (CMS). Personalization: Dynamic content can be tailored to individual users. Limitations Complexity: Requires more resources and expertise to develop and maintain. Performance: May experience slower loading times due to database queries. Comparing Static and Dynamic Web Development Performance and Speed While static sites are swift due to their simplicity, dynamic sites can be slower due to database interactions. But with advancements in technology, the speed gap is narrowing. Flexibility and Maintenance Static sites are like classic cars; they're reliable but lack modern features. Dynamic sites, on the other hand, offer flexibility but require regular maintenance and updates. The Future and Evolution As technology advances, we're witnessing a convergence of static and dynamic elements. Hybrid approaches and new frameworks are emerging, blurring the lines between the two. Trends and Technologies From serverless architectures to Jamstack, the future is about combining the best of both worlds for optimal performance and user experience. Conclusion Static vs. dynamic web development isn't about choosing sides but understanding the strengths and weaknesses of each approach. Whether you're Mike or Sarah, embracing the right tools and technologies can help you create web experiences that resonate with users. FAQs Which is better: static or dynamic web development? It depends on your project requirements. Static sites are ideal for simplicity and speed, while dynamic sites offer interactivity and flexibility. Do dynamic sites always load slower than static sites? Not necessarily. With advancements in technology and optimization techniques, dynamic sites can achieve comparable speeds. Can I convert a static site to a dynamic site? Yes, but it requires significant restructuring and might involve rewriting parts of the website. How often should I update content on a dynamic site? Regular updates depend on your content strategy and user needs. However, maintaining fresh and relevant content is essential. Are there any security concerns with dynamic sites? Dynamic sites may be more vulnerable to security threats due to their complexity. However, implementing security best practices can mitigate risks.

    • blockchain
    • learning
    0
  • Jackson.Peera.
    ForFunctionlandOct 19, 2023
    Article
    Create a NAS with Your FxBlox — How to install Samba: A Beginners Guide

    Big shout-out to Fierro Labs for this awesome tutorial! It is time to upgrade our FxBlox to something we can actually use! I will show you how to install Samba in just 3 easy steps! We are in search of the best way to set up our Blox as a NAS while the FULA testnet is still under development. This beginner friendly tutorial will allow us to add, remove, and edit files on the Blox all while accessing them on Windows, Mac, or other Linux computers! We are introducing many more Linux fundamentals in this tutorial, but don’t worry I will explain new things thoroughly. “Released in 1992, Samba is an open source implementation of the SMB protocol for Unix systems and Linux distributions. The server supports file sharing and print services, authentication and authorization, name resolution, and service announcements (browsing) between Linux/Unix servers and Windows clients.” (Sheldon, Robert & Scarpati, Jessica. “Server Message Block protocol (SMB protocol)”. TechTarget. August 2021). Since SMB was introduced in the 1980’s, Windows, MacOS, & Linux have supported the SMB protocol to access SMB-enabled remote files servers. In this tutorial you will learn how to: Factory reset your FxBlox device Attach a Keyboard, Video, and Mouse Update the FxBlox’s Linux OS Install Samba through armbian-config Configure Samba on Linux Manage and check Samba status View files hosted in Samba, on Windows and OSX Preface Okay I might have embelished the intro. It is going to take more than just three “easy” steps to set up Samba. But I will hold your hand through it. This tutorial will use ssh. If you want a quick refresher on how that works, check out my last tutorial Create a NAS with Your FxBlox: A Beginner’s Guide Series | by Fierro Labs | Sep, 2023 | Medium. If you want to continue the tutorial using a KVM, then get a mouse and keyboard combo that uses a wireless receiver (I don’t recommend bluetooth). A usb-c to usb-a adapter to connect it and a usb-c to HDMI dongle/cable (usb-c to DisplayPort also works). To factory reset your device, you will also need a usb-c cable that connects to your flash drive. Multi-port dongles/adapters will not work with the Blox. If you do not have any of the above, please consider supporting me by using my amazon affiliate links to order your accessories. Thank you! Usb-c to Usb-a female adapter Usb-c to HDMI female adapter or Usb-c to HDMI male cable Logitech Wireless Keyboard and Mouse combo *Disclosure: As an Amazon Associate I earn from qualifying purchases. Here is the default login information for the FxBlox: Username: pi Password: raspberry Hostname: fulatower Attach Keyboard, Video, & Mouse If you want to continue with the tutorial while interacting with the Blox directly. Then you’ll need the aforementioned cables or adapters. To connect keyboard and mouse, you could connect one to the top usb-c port and the other to the middle one. But I say just get a wireless combo, so you only take up one port. The two bottom usb ports both support DisplayPort which allow you to connect HDMI cable/adapter. Login with the default password, and press Ctrl+Alt+T to bring up the Terminal. Or look for it in the Applications, by clicking on “Activities” on the top left, then the box of nine dots at the bottom. Factory Reset FxBlox I think it is worthwhile to know how to factory reset your device, in case you mess something up or just want to start with a clean slate. Keep in mind, you will have to set up the device through the Blox app again. Factory resetting is possible by flashing the FxBlox with the Fula image provided by Functionland (Releases · functionland/fula-ota (github.com)) with a USB attached to the top usb-c port. Make sure your USB drive is formatted to FAT32. You’re going to want to download the latest version. At the time of this writing it is v1.1.5 (specifically RK1-EMMC-27–08–2023.5G_usb_flash_update.zip) and move it to your flash drive. Unzip the contents and move over all the files to the root directory of the USB drive. So that there are no folders at the root of the USB drive. Feel free to connect the USB drive now or after you’ve unplugged your Blox. But make sure it is ONLY to the TOP most usb-c port! Now, with the usb drive connected. Turn on your Blox, and the light should turn green, then turn yellow. This yellow light will stay on for about 10–15 minutes, indicating that it is applying the update/reset. You will know it is done when the lights alternate between Green and Blue every couple seconds. Now you can remove the usb from the tower and turn it off and on again. The Blox may or may not restart on its own once or twice. Keep an eye out for that and then you can continue to set up the device through the Blox app. *Note 1: After completing setup through the app, you may need to turn off and on the device at the end, for it to be discoverable. You don’t actually have to get a “Setup Complete” screen for it to connect to the wifi (in my experience)! Note 2: In my testing, I found setting up through the Blox app was the only way for the FxBlox to retain the wifi information. That is why I recommend it over just going straight to the desktop with KVM. Note 3: There needed to be an updated image of the Blox, because at the time of launch, the WalletConnect service reworked their API without telling anyone and it messed things up for owners to say the least. Hence the one-off “…_usb_flash_update” image options. Generally, you will just download the source zip folder and follow the same process.* Update the FxBlox’s Linux OS If you are NOT already logged into the FxBlox via ssh or connected directly to it, then we will do so now: ssh pi@fulatower If ‘fulatower’ doesn’t work, use the IP Address of the Blox instead. You can find this under the “Blox Discovery” tab in the Blox app Settings. Or your wifi router’s “Connected Devices” list. To update your FxBlox type: sudo apt update && sudo apt upgrade This will download and install all the components needed to get you up-to-date with the latest Ubuntu release that Blox runs. Now reboot device to apply changes: reboot Now, you can ssh back into the device. Configure the Samba Server on Linux — Part 1 — Create the Share Directories FINALLY, we are ready! Let me lay out the idea of what we are going to do. We are going to create a file sharing server and only permit authorized users access to write to it. Specifically, we are going to give each individual user a space on the Samba server called a “share” and a “public” space for all authorized users to write to. Before we can start, we have to decide where on our Blox we want to create the space for the Samba server. If you’re like me, you want to actually utilize the hard drive you installed into your Blox. My drive is located at /media/pi/nvme0n1p1, you can find yours by typing: df -h You’ll know which one is yours from the capacity of the drive and the “Filesystem” should start with /dev/. As well as the fact that the type of drive installed will be shown. E.g. I installed an nvme drive and you can see nvme in the path. Note 4: when you factory reset your device, this storage drive won’t get reformatted even after doing the setup process through the Blox app. So we’ll start by creating the space for our Samba server and all authorized users. In my case, I am authorizing pi and fierro_labs. IMPORTANT: Substitute the location of your drive in the commands! mkdir /media/pi/nvme0n1p1/FulaShare/ mkdir /media/pi/nvme0n1p1/FulaShare/Public mkdir /media/pi/nvme0n1p1/FulaShare/pi mkdir /media/pi/nvme0n1p1/FulaShare/fierro_labs Now verify they were created by navigating to that directory and listing its contents: cd /media/pi/nvme0n1p1/FulaShare && ls Configure the Samba Server on Linux — Part 2 — Install Samba with armbian-config If you don’t know what armbian-config is, you’re not alone. I recently just learned about it. Shoutout @Fred from the Functionland Telegram channel. It is a tool to configure your armbian-based SBC (Single Board Computer) with a graphical user interface (GUI). You can do various things including: setting up remote desktop control, installing third party software like Samba, and adjusting other system settings. To access armbian-config, you NEED to have your system up-to-date. To access the GUI type: sudo armbian-config You can then use your mouse to: Select Software Select Softy Select Samba and let it finish installing It will now ask you for a Samba username and password. Create one for pi. We’ll make another account after setup. Now we can move on to creating the public share for all users in the workgroup AND each individual users’ share. Use the arrow keys to get to the very end of the file. Copy/paste this into your terminal on a new line or just type it out: [Public] comment = Public directory where all users of the workgroup can read/write browseable = yes writeable = yes guest ok = no force create mode = 0770 force directory mode = 0770 path = /media/pi/nvme0n1p1/FulaShare/Public valid users = @workgroup [homes] comment = Home directories where only the authorized user can read/write browseable = no writeable = yes public = no create mode = 0700 directory mode = 0700 path = /media/pi/nvme0n1p1/FulaShare/%S valid users = %S Remember to replace the path to where you want to store the users' files in your case! Click on “OK” and exit all the way out of armbian-config until you see your Terminal again. Here is a description of each config option’s purpose: [Public]. Represents the share name. This is the directory location users see on their client computer. [homes] is a special share definition. Samba will create shares for new authorized users “on the fly”. This definition will enable us replace [home] with the user’s username when searching for it. Comment. Serves as a directory description. browseable. This parameter allows other machines in the network to find the Samba server and Samba share when set to yes. Otherwise, users must know the exact Samba server name and type in the path to access the shared directory. read only. Can be ‘yes’ or ‘no’. This option specifies if users will be able to only read the share, or write to it too. writeable. Pretty much redundant if read only = no. Grants write access to users when set to yes. guest ok. Allows anyone to read/write if set to yes. Otherwise, username/password is needed to access the specified share. public. Is synonymous to guest ok. Force create mode. Forces file permissions on newly create files by the user to be what is specified here Force directory mode. Forces directory persmissions on newly created directories by the user to be what is specified here. Permission #’s: 4=read,2=write,1=execute. Therefore, 7 = read+write+execute permissions. The three digits represent permissions for: owner, group, & others respectively Path. Specifies the directory to use for a Samba share. The example uses a directory in Fulashare/ valid users. Only the users or group specified can access the specified share. @workgroup. Is a shortcut to reference the group of Linux users who are also registered under that Group name in the Samba server. %S. Is a Samba shortcut to reference the username of a logged in user that is registered in the Samba server. You can come back to edit this configuration file at any time by using an editor of your choice, mine is vim (fight me): sudo vim /etc/samba/smb.conf If you don’t have vim, install it with sudo apt install vim. Okay are you still with me? If you want to learn more about what you just did, I will applaud you if you check out Samba’s official documentation. Or more specifically the smb.conf documentation to learn how you can customize the server for your use case! Configure Samba Server on Linux — Part 3 — Users, Groups, and Permissions The last step to get this to work is to register our users in the Samba server to have a login password. I know so far this has been a heavy lift, but the result will be sweet. I explain a little bit of what each command does, but if you want to learn more, I encourage you to Google the name of the command. Ex: “useradd linux command” or “smbpasswd linux command”. To register users for a Samba account on your server, the general syntax is sudo. smbpasswd -a . Samba accounts can only be made for already existing users on your Blox. And the password doesn’t have to be the same as the one used to log into the Blox. To make a new user account on your Blox AND register it in your Samba server, run all three commands. If you want to create an account in Samba without giving a user a login to your Blox, omit the second command: sudo useradd fierro_labs sudo passwd fierro_labs sudo smbpasswd -a fierro_labs If you ever want to change the Samba password just use: sudo smbpasswd . If you ever want to change the Linux password just use: sudo passwd . Now, we want to create a group called workgroupfor all our users in Linux. This is necessary to give all authorized users access to the Public space on our Samba server. To add users to the group called workgroup, we first have to create the group: sudo groupadd workgroup To add a user to the group: sudo usermod -aG workgroup pi sudo usermod -aG workgroup fierro_labs Setting permissions is what is going to make or break if you can connect to your local Samba server from another computer. At this point you should still be in the /media/pi/nvme0n1o1/FulaShare directory, if not, then do so now. To set permissions: sudo chmod 700 pi/ sudo chmod 700 fierro_labs/ Chmod stands for change mode and it's the command to change the permissions on files and directories. The 700 number means enable read+write+execute permissions for the user only. See config options description above for more info. Lastly, let’s specify the owners of the directories. sudo chown -R pi:workgroup pi/ sudo chown -R fierro_labs:workgroup fierro_labs/ sudo chown -R root:workgroup Public/ chown stands for change owner and it’s the command to change owner and/or group of a file or directory. Your permissions would look something like this: Manage and Check Samba Status We can check if our Samba server is up and running by: sudo systemctl status smbd Press ‘q’ to continue. If you see a green dot or the words “running” and “enabled”, then your server is currently running! If it says the service is “stopped” or “disabled”, then you will want to run sudo systemctl start smbd If you ever want to stop the server, you can run sudo systemctl stop smbd To reapply setting changes to /etc/samba/smb.conf, we will want to restart the server by running sudo systemctl restart smbd View files hosted in Samba, on Windows and OSX When you log into the Samba server as a registered user, you will be able to read and write to your individual share and the public share. IMPORTANT: It is a very annoying and difficult process to log into a different Samba account on the same computer login! For all intents and purposes, you can only log into one Samba account per client computer user! Windows File Explorer: Make sure to have “Network Discovery” on. If you go to the Network tab within File Explorer, and you DON’T have it on. A pop up header will show, asking you to turn on Network Discovery. Now switch to “This PC” tab, and click on the “See More”, three dots options menu. Click on “Map Network Drive” Assign it a letter of your choosing Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Select the Reconnect at sign-in option Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. Windows Run: Press Windows + R Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. MacOS/OSX Check to see if you have the Network tab listed on the left side in Finder. Fulatower should be there already, click on it and it will ask you to log in as a guest or registered user. The Guest option will only allow you to see that the Public folder exists. Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Manual “Connect to Server”: While on the desktop screen (aka Finder), press Command + K. Enter the protocol method (smb://), then the IP address or hostname of the Blox (fulatower), followed by the share you want to access. Ex smb://fulatower/pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. The server should show up under Network or Locations in Finder now. Enjoy your new NAS! Conclusion Holy crap you made it! That was a long tutorial, but you pushed through. This knowledge is key fundamental IT system administration tasks and you just set up your first network share/file server from start to finish! I sure tried my best to explain everything you need to know so that you can confidently understand what the different Samba requirements and what the different options available to you are. Let me know in the comments what was the most difficult part for you? In the next tutorial, we will be leveling up our IT sysadmin knowledge to upgrade our Blox. We will be able to access our files, photos, and any other data on our Blox from anywhere in the world! Not only that, but we’ll be able to view those files from almost literally any device! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content and tutorials. Checkout the Functionland Telegram for support and updates. Cheers!

    • Fula Network
    • Blox
    • BAS
    • FxFiles
    2
  • Jackson.Peera.
    ForFunctionlandOct 19, 2023
    Article
    Create a NAS with Your FxBlox: A Beginner’s Guide Series

    Big shout-out to Fierro Labs for this awesome tutorial Origin If you are a FxBlox owner and have successfully set up your device, then you must be wondering, “What do I do now?” Well, I have the answer(s) for you! This is a beginner friendly tutorial to find new ways to use your Blox. As you might know, the FULA testnet is not out yet, and we are currently stuck in this limbo of personal experimentation. People want to learn what we can do with this device while it has no other services running on it. My hope is that these solutions in this series “age well” for all users, in that, we will be able to run concurrent services off our Blox even when the network is up and running. I will monitor the situation closely and provide an update if anything changes. These options increase in technical knowledge, but I will make it easy to follow along, regardless of ability. So, let’s start! Option 1: FxFotos & FxFiles apps If you were like me, the first thing you tried after getting the Blox set up and exploring the Blox app, was download the two apps Functionland has available (one on iOS). Then you tried to figure out how they work together with the Blox. But to your surprise, you couldn’t get it to work and were left wondering if this is just going to be a paper weight until the FULA testnet is out. I won’t talk about this experience again, but if you want to read more about it. Check out Navigating the Functionland App Experience: A Candid Review | by Fierro Labs | Sep, 2023 | Medium Option 2: Network Attached Storage (NAS) TLDR: scp — How to copy a file from a remote server to a local machine? — Unix & Linux Stack Exchange There are MANY ways to set up a NAS, but we are going to start with the VERY basics in this option and get more advanced. If you don’t know what a NAS is, it is simply a storage device that is connected to a network, aka the internet. Simple right? Now, this device does not need a keyboard, video, and mouse (KVM) to operate, but could be utilized if the device was designed with that in mind. So, in our case we COULD use keyboard and mouse, but we actually don’t even need one right now. I will explain how we could use KVM in a later blog post. In its simplest form, you can use the FxBlox as a NAS by simply transferring files over the air, to and from your device. All you will need is the scp and sshcommand line tools and the default login info for the Blox. Default Login Info for Blox: User: pi Password: raspberry Hostname: fulatower If this is your first time setting up, and you can’t resolve ‘fulatower’ as hostname (as shown in examples below) try updating the Linux system first. To do this, find your Blox ip address under “Blox Discovery” in the Settings of the Blox App. Then, use the ip address as ‘hostname’ for now. Then when you first ssh into the Blox, run: sudo apt update && sudo apt upgrade Preface The scpcommand can be used to move files TO/FROM your computer and a remote computer. The sshcommand is used to remotely login and control a computer through the command line. If you have any issues at all, step 1 of troubleshooting is turn it off, wait a minute, and turn it back on. Make sure you are on the same wifi/LAN as your Blox and that your VPN is off! After trying all that, leave me a comment explaining your issue (or just Google it 😉). Note for Windows 10/11 Users Congrats you might already have everything you need to start. Go to PowerShell or if you’re an absolute Chad, then open up your WSL, and type scp, then hit Enter. Then you’re good to go! Now type ssh, and press Enter. To become an absolute Chad, you can download WSL directly from the Windows store and you can follow this guide to set that up properly https://learn.microsoft.com/en-us/windows/wsl/install (it’s not that hard 😉). SCP & SSH Usage For brevity I will now assume you are running a Linux based terminal like PowerShell or WSL. Linux and Mac users can just use the Terminal app. First, let’s move a file over to the tower. We can create an arbitrary new file with the touchcommand. Open up the terminal of choice and type: Note: I am in the Documents folder, if you want to create one too, you can type: mkdir Documents touch Hello_Fula_World Command Syntax: touch Now, we can move it over with scp: scp Hello_Fula_World pi@fulatower:/home/pi/Documents Syntax: scp @:/remote/directory Next, we just enter the default password: raspberry. The password will not show as we’re typing it. This is a linux-thing for password security. Now, we can remove/delete the file from our computer, because we already saved it in our personal “cloud”. rm Hello_Fula_World Syntax: rm To verify our results, we can now remotely login to the Blox with ssh: ssh pi@fulatower Syntax: ssh username@computer_hostname For first time setup, it will basically ask us if we trust the device we are connecting to. Type ‘Yes’ to continue and enter the default password. Now we can change directory to where we moved the file to with cd: cd /home/pi/Documents Syntax: cd path/you/want/to/go/to. This would also work: cd ~/Documents or just cd Documents. Then we can see the files in the directory by typing: ls Congrats! You have half a NAS! Now, to complete the cycle, we have to move a file back to our local computer. We first have to exit out of the remote login session by typing: exit From here, we can use scp to move the file from the Blox to our computer: scp pi@fulatower:/home/pi/Documents/Hello_Fula_World ~/Documents Syntax: scp @:/file/to/send /where/to/put/it Note: “~” means Home directory; “/” is the path separator; all together means ‘with respect to the Home directory, access the Documents folder’. Now if we type out ls. We will see that the file is back! Conclusion HOORAY! You have a SUPER basic NAS available for use! The only obvious issue with this is that it sucks. We need an upgrade NOW if we are to use this as a replacement for anything. This tutorial was a helpful first step to understand: The command line and how to navigate directories Local network attached storage devices Secure file transfers with scp Remote login to computers with ssh In the next tutorial, we will sshinto the Blox and set up a user-friendly GUI to view those remote files. Which you will also be able to view from Windows, Mac, or even your iPhone! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content and tutorials. Checkout the Functionland telegram for support and updates. Cheers!

    • FxFotos
    • BAS
    • FxFiles
    2
  • Jackson.Peera.
    ForFunctionlandOct 19, 2023
    Article
    Navigating the Functionland App Experience: A Candid Review

    Shout-out to Fierro Labs for this great article. Origins I don’t think I’m alone when I say that I had a bad experience using the collection of apps by Functionland. This isn’t meant to bash on them, but meant to highlight where I think the apps could be improved. Keep in mind I am using these apps on a Pixel 4a (Android 13) and an iPhone 13. If you watched my video FxBlox Setup video, my reactions were genuine and it was a pretty smooth first attempt. I didn’t run into major problems as many others have and all my hiccups and issues were shown on the screen. What was not shown in the video, was me playing around with the Blox, files, and photos apps afterwards. And that is what this blog post is about. Video on this and more coming soon. FxBlox App (Android) I went through the full setup process on Android (before the iOS app was available). The app had misspellings which I think gave people an even worse reaction to the setup process; it supported the idea that this was an “unfinished and unrefined” product and it left people with the feeling of “is this even worth it?”. People had gone into the setup process with a bad taste in their mouth already, because of the product delays that got us our devices eight months after the original estimated delivery date. Granted, we all know it is unfinished and that is not being denied by the team at all. Because they know they are going to do something about it. They have to. But the psychological effect of people’s suspicion being proven correct had taken place. I got the sense that people are very upset about it and are getting hesitant about the success of the end product. Side Note: To be frank, what didn’t help was a bunch of non-technical people buying into the campaign during the height of the pandemic and crypto-optimism era. They had promises of quick passive income (possibly get rich quick) and they realized they got into a little more than they could handle. But don’t worry, you got me, broski. After the setup, I looked around the app as I’m sure many other owners did. The thing that stands out to me is that it is lacking functionality. Understandable. So here are a few things I would like to see: As a blox owner, I would love to have the ability to factory reset the device right from the app. As a blox owner, I want to have a (“+”) button in the “Blox” or “Devices” tab, that lets me go through the formatting process for a new drive to use with the currently selected tower. As a blox owner, I want to have a (“+”) button in the “Blox” or “Devices” tab that allows me to add another Blox to my setup/array of devices. As a user, I would want to have more (“!”) information buttons in the different screens to educate me on things like the “PeerID” and “DID” and, in general, education on the “Blox”, “Users/Friends”, “↑” tab, and “Devices” tabs. My general feedback about the setup process in the FxBlox app is: it was mid. First, the “blue” color used when connecting a power adapter isn’t even blue! It’s turquoise/teal! In the setup video, we clearly see a nice BLUE color during the firmware update phase. It would be good to see the deep blue when the device turns on so we can clearly see the difference between the current teal color and white. Second, it would be a much smoother experience if the Blox didn’t have to be turned off and on multiple times. Or educate us on why it is necessary. Lastly, it would be much more informative/reassuring to the user if there was no need to move away from the app during the firmware update. If there was a progress bar that showed when the device was done updating, that would be great. I think your experience may vary, personally whenever I ran into an issue I just force closed the app(s) and tried again. I did this 3–4 times during the MetaMask linking and DID creation phase (which is the worst part, i.m.o). FxFotos (iOS & Android) The biggest issue with the FxFotos apps is how they pair with the Blox which tldr … they don’t? The first thing they will ask of you is permissions, which makes sense. It wants access to photos and it wants to see if a Blox is on the network. That’s as expected and although the app does pull in my photos, I now need to find a way to sync the Blox. I head to Settings by clicking on the empty avatar image on the top right. I am presented with one option which is “Create DID”. Well… didn’t I already create a DID? Can’t I just use that one? Who knows. I go through the process and it asks me to open up my wallet so that I can sign a transaction. But I never get a pop up and it leaves me wondering if I should be on the Goerli testnet (just like in the Blox setup)? So, I try that and still nothing. At some point later on, I try again and I’m surprised to see the DID signature popup while on the Goerli ETH testnet on my Pixel. (It never popped up on iOS) I’m returned to the FxFotos app. The workflow on Android is different than on iOS at this point. On Android, I am also presented with an option to “Add a Blox”. So, I fill in the information and it promptly fails upon hitting “Connect”. And it just leaves me with a couple questions. Would a DID really be all that’s needed to sync the photos on my phone to the ones in my Blox? Why can’t I add the DID that I already created instead? Is there a way to condense that DID into like an ens domain and provide that to make the DID linking process less complicated? Did I need to be on the Goerli testnet? I hope someone can address these questions in the comments or Telegram. FxFiles Experience (Android only) So, if you didn’t know, the FxFiles app is only available on Android. Don’t worry iPhone users, you’re not missing out on anything. It is in essence, just a standard file viewer app. The awkward thing about it is that right when you open the app for the first time, it goes straight to the permissions page in Settings. This is weird because it should just be a pop up within the app. In this app, there is no way to connect to a DID or connect the Blox. So it’s just another app that will be the framework for how we upload files to the Fula network in the future. What I think would be cool with this app is using it with emulators. On android and dedicated emulating devices, you need to point the emulator to where files are located. But the issue of where you get your ROMs is still a legal grey area. Imagine you downloading this app and streaming your games from your FxBlox on the go! Or having a larger access to games friends shared with you or from the community?! (we will explore this idea in a future video😜) Conclusion The apps need some work to say the least. Functionland has said that they are currently prioritizing the development of the incentivized testnet and will help all users troubleshoot their setup/connectivity issues before its release. This is to make sure that everyone who is able to participate, can do so. The apps and workflow will only get better from here and future Blox owners will take the UI/UX experience for granted. I’m looking forward to that day, I hope you are too! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content. And checkout the Functionland telegram for support and updates. Cheers!

    • FxFotos
    • Blox
    • FxFiles
    2
  • elPiablo.Peera.
    ForD_D AcademyJul 04, 2023
    Article
    Creating a smart contract for ‘tiered’ NFTs

    Hey happy hackers, are you ready for building some TierNFTs? Just checking, but have you already completed the previous two lessons in this track of five? If not, it might be nice to get those under your wing first. And if you’re an absolute beginner, Getting Started….. is definitely where you need to be. You’ll find all the Solidity basics, developer tools, blockchain fundamentals needed for this project starting over there. in this tutorial you’ll be building a project with tiered NFTs, which you can reuse and adapt for a tonne of real world scenarios. there’ll be some variation on the tooling you used in the previous Basic NFT project What you’ll learn you’ll go a lot deeper with both Solidity and infrastructure concepts you learned in Build a Basic NFT build out extra functionality to your smart contract to exponentially increase use cases for NFTs code an SVG directly into the contract, as opposed to using separate .json files Note well - please complete all the interactive quizzes and digest any additional materials that are embedded in the tutorial. These will really deepen your knowledge, so let yourself take your time. When you come back here to the forum, you’ll be an absolute genius for answering other folks’ questions. And that’s going to bump up your reputation. So take it nice and easy, and enjoy! Next steps are to Write Automated Tests for your TierNFT – one of the most important things to learn as an app developer, and secure code is what web3 needs to be a safe environment for everyone. After that, you’ll be building and connecting to a front end in the fifth and final lesson of this track. a Developer’s Guide to Ethereum track using web3.py library is a next possible alternative, where you can learn all the fundamentals of how a blockchain works, and why we use them. our ERC20 track is underway and another avenue you can take. For now, enjoy tiering up those NFTs up!

    • Pre-intermediate
    0
  • elPiablo.Peera.
    ForD_D AcademyJul 03, 2023
    Article
    Build a Basic NFT – prepare for a deep dive frens….

    Hey conscientious coders. So you’ve decided to Build a Basic NFT. Make sure you’ve been Getting Started with Smart Contract Development first, if you’ve landed here unprepared. If you’re still quite new, this is a deep dive tutorial, and it’s broad. But it is fun!! you’ll build a very valuable NFT smart contract, which you can use as the backbone for many of your future NFT projects. use a wide range of developer tools, including Hardhat to interact with the contract view your NFT on a public market place What you’ll learn deepen your knowledge of the tech stack of web3 learn how to develop using a console use dependencies with package managers enhance your Solidity knowledge from previous lessons write scripts in JavaScript to deploy your contract configure your code to deploy on a live Ethereum testnet Please note: We have lots of mini-quizzes and additional learning content built into the lesson. They are not there to slow you down, but to compound your new knowledge, helping you become a grounded developer. Please use them before rushing to the forum. There is a lot to unpack, so take your time, enjoy it – it will make you proud at the end of the day. Please utilise your wisdom by helping answer the questions of others on the forum here. Just make sure to keep it within the context of the actual tutorial i.e. meaningful for the other. Then you build yourself a reputation here on DeveloperDao.Peeranha.io as a conscientious steward of education! Next steps we’d advise are to continue down this ERC721 track, and build TierNFTs on what you have just created. A follow up tutorial with writing tests in JavaScript for these contracts, and finish up by creating a front end to showcase your new skills to the world when you are done, follow our ERC20 track building with Foundry this time or go via Python for a Developer’s Guide to Ethereum, to really learn about the architecture we’re building upon! Happy building a better world!

    • Pre-intermediate
    0
Top tags
  • The Graph
  • Aave Protocol
  • discussion
  • Solidity
  • Subgraph
  • Smart Contract
  • GraphQL
  • blockchain
  • Query
  • Indexers
We use cookies to ensure you get the best experience on our website.
More info