blockson.dev|
Known by names Ethan Blockson (nick) and Vladimir Barchuk (real).
Ready for responsible execution of your tasks.
Projects
DEX pools generation logic for Solana protocol
pub trait Pool {
#[allow(unused_variables)]
fn initialize_pool(context: &PoolContext, state: &mut PoolState) -> Result<(), ProgramError> {
Ok()
}
#[allow(unused_variables)]
fn get_creation_basket( -->
...
$700
Full-stack MENR referral gaming platform
import React from 'react';
import App from './App';
import { AuthProvider } from './context/AuthProvider';
import { BrowserRouter, Routes, Route } from 'react-router-dom';
import './i18next';
import { LanguageContextProvider } from './context/languageContext';
import { UserProvider } from './context/UserContextProvider';
...
$3100
NFT game with ERC-721 and ERC-1155 items
function buyWagon(uint8 level) public payable {
require(totalWagons[level] < maxWagons[level], "Max wagons amount on this level reached");
require(level > 0 && level < levelPrice.length, "Level doesnt exist");
require(msg.value == levelPrice[level], "Level cost another sum");
uint256 tokenId = _nextTokenId++; // increment tokenId
wagons[tokenId].level = level; // set level for tokenId
wagons[tokenId].condition = level * 10; // 10 conditions for every wagon with unique path to metadata
...
$350
Parser of newly deployed ERC-20 tokens
// Listen node and save addresses, creation methods and symbols
const listenForTransactions = async () => {
wssProvider.on('block', async (blockNumber) => {
// Load allowed method signatures from 'methods.json' uniqueNewAddressesinside the async function
const allowedMethods = JSON.parse(fs.readFileSync(methodsJSON, 'utf-8'));
// Read blocks
const block = await wssProvider.getBlock(blockNumber);
...
$230
Solana NFT collection with white-listed premint
fn mint_nft(
wallet_keypair: &Keypair,
mint_account_pubkey: &Pubkey,
token_account_pubkey: &Pubkey,
client: &RpcClient,
) {
let wallet_pubkey = wallet_keypair.pubkey(); -->
...
$250
Bot to frontrun 1st buyer of ERC-20 token on LP
func Init() {
nodeUrl := "https://relay.flashbots.net"
_builder, err := ethclient.Dial(nodeUrl)
if err != nil {
log.Fatalf("Failed to connect to node: %v", err)
}
log.Printf("Connected to FLASHBOTS BUILDER: %s", nodeUrl)
...
$400
Uniswap V2 flash swap arbitrage smart-contract
function flashSwapArbitrage(
address _tokenBorrow, // e.g. USDC
address _tokenBorrowPair, // e.g. USDT
uint _borrowedAmount, // in wei, e.g. 5000000000000
address _tokenWithProfit, // e.g. PEPE
address _tokenWithProfitPair // e.g. WETH
) external {
...
$225
Telegram Bot checking ERC-20s ATH price
bot.on('message', (msg) => {
const chatId = msg.chat.id;
if (msg.text.startsWith('/searchX')) {
const searchTokenAddress = msg.text.split(' ')[1]; // command is /searchX <token_address>
// Prepare GraphQL file
let query = fs.readFileSync('query.graphql', 'utf-8');
query = query.replace('PAIRED_WITH_ADDRESS', pairedWithAddress);
...
$70
Matrix game with ERC-20 token and auto-burning
contract HappyTrain is ReentrancyGuard {
struct User {
uint id;
uint registrationTimestamp;
address referrer;
uint referrals;
uint referralPayoutSum;
...
$1200
ERC-20 width liquidity mining function
contract XYZ is ERC20("XYZ","XYZ") {
mapping(address => uint256) public claimAmount; // what sum address can claim
mapping(address => uint256) public wenClaim; // when address can claim
uint256 public claimPool; // total tokens waiting for a claim
uint256 public genesisBlock; // first block when mining begins
uint256 public endBlock; // +72 hours after genesisBlock
bool public isApprovedToUniswapRouter;
...
$250
Classic ERC-20 with white-list and anti-bot
contract Classic is Ownable, ERC20 {
bool tradingStarted = false;
uint internal maxHoldSum = 100_000_000_000 * 10 ** 18; // Starting 100B, you can changeMaxHoldSum()
uint public beginTimestamp = 0;
address public thisTokenAddress;
address public routerAddress;
address public pairAddress;
...
$90
NFT game with ERC-20 tokens smart-contracts
contract CAPS is
ERC721("CAPS (Monsters)", "CAPS"),
Ownable,
ERC721Enumerable,
ERC721URIStorage
{
using Strings for uint256;
...
$1300
Next.js app with WalletConnect – "CAPS"
const PlayPage = () => {
const [isSigned, setIsSigned] = useState(true);
const [tokenBalance, setTokenBalance] = useState(undefined);
const currentMinFee = 0.0656;
const { address } = useAccount();
const { chain } = useNetwork();
const releaseCover = true; // Before game release
...
$3000
Docusaurus documentation – "CAPS"
---
slug: /
sidebar_label: 'Introduction'
sidebar_position: 1
---
# What is CAPS?
**CAPS** is a decentralized, [full-cycle](./blog/about-full-cycle-concept/) NFT collectible game that aims to implement Web3 standards in a fun and engaging way.
...
$800
NFT game HTML landing pages – "CAPS"
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>CAPS • Crypto NFT Collectible Game</title>
<meta name="description"
...
$500