Michael Sterling Building, Brunel University, Uxbridge UB8 3PH
Brunel Hack 25 is a planned 2-day hackathon on the 12-13th of July, 2025, organized by the Brunel Society of Blockchain and held at the university campus in Uxbridge.
🔎 Details
TELEGRAM: https://t.me/RadixHackathon
✅ Installation
Applications on Radix can be prototyped quickly using the Radix Engine Simulator (resim). More information is available on the Radix Documentation & Radix Developer Resources pages.
- Download and install VS Code.
- Download and install Docker Desktop.
- Open your chosen development folder in VS Code via File > Open Folder.
- Open a terminal window in VS Code via Terminal > New Terminal.
- Run the following command to clone the official Scrypto Starter repository:
- VS Code might suggest you to open the repository in a dev container, because of the existing
.devcontainer
config. - If it does, click "Reopen in container".
- Otherwise, open the command palette and type "Reopen in container".
- Wait for VS Code to reopen. Docker might pull the image if it's not yet present before it start the container.
- Run the following command to see the resim functionality:
git clone https://github.com/radixdlt/scrypto-starter.git
resim help
💡Hackathon Ideas - Subintents
Lootbox 2.0: A system where NFTs can be used to redeem other assets. The redeemable assets are not known to the user beforehand as they are decided during handling of the subintent.
Intent Escrow: Create an interface for two users to select items from their wallets to exchange. Once happy they both submit a subintent which is combined and submitted to complete the exchange. This is done with a live interface (Websockets are a deffo) like in most video games when you're trading between players in-game.
PvP Games: E.g. Rock, Paper, Scissors - two users decide on they're move by submitting subintents. Your backend evaluates both and decides the winner. Expand this to NFTs with different power, health, ability stats and you're onto something really fun.
Sealed-bid auctions: Users submit subintent bids for an auction lot - the bid amounts are not known to other users. Only the winning bid is actually submitted to the network.
Gated-access system: Have some data in your database or an API? Make a requirement to mint an asset based on this. E.g. Make joining your discord a requirement to mint an asset - your backend would validate this before being able to submit the full transaction.
Alternative voting system: With DAO votes it can be a pain to handle the fact voting weight is fungible tokens without issuing an NFT or doing some time-weighted averages. Have users submit subintents proving ownership of an amount, then submit these to the network all at the same time. If sneaky users have moved tokens around in their wallet to double spend their vote, those transactions will fail.
Fee-less systems: The dapp toolkit doesn't expose an easy way to sign random things with your key. However, with subintents, you could have users sign plain string messages that don't actually ever need to be submitted to the network. No fees would be required by the user or you as no transaction are ever actually submitted fully to the network. This could be an alternative for a ROLA verified auth flow potentially.
Web2 Data Tokenisation: If you want to make a game or platform that is a blend of web2/web3 - you can have users start in the web2 world by for example creating a character, doing a couple quests, earning XP, etc. all without doing any transactions or having a wallet. As soon as they want to trade the asset - You can then use subintents to verify the user/their xp/character/weapon was earnt in your database and then tokenise that asset to send to them. Players would have the choice of using your app completely web2, and only go web3 if they want to.
Misc. thought: Draw funds from active stake. In any subintent system where you are drawing funds from that user, but the actual submission of the transaction may not happen for several days/weeks - You could instead draw the funds from staked XRD (or any other staked/lp'd asset) whereby your insta-unstake them/retrieve from weft/root/a pool to then use in the transaction.
E.g. Imagine a USDC lottery using subintents where users submit subintents withdrawing $20 from their USDC that's already earning on Weft. The lottery backend accumulates intents (tickets) for a week or two, then a lucky one is chosen to receive all the money back. Meanwhile during that couple of weeks, lottery participants have still been earning on that $20 sitting on @Weft_Finance.