Tari Local Opensource Swap Platform

Hello everyone,

I have been around since testnet and see the long term vision for Tari. I HODL my XTM.

I’ve been working on a local-first Tari/Ootle atomic swap and asset testing app, and I wanted to ask what people here would actually want from something like this.

It’s still early and experimntal, but the goal is to make Tari L2 easier to test and use without needing a hosted exchange or giving custody of funds to anyone. After that, mainnet with the same vision.

The idea is a simple local UI where people could test atomic swaps, TARI flows, public test assets, NFTs, and eventually cross-chain routes. I’m also working toward better two-person swap flows using invite/export/import features and QR codes, so sharing a swap invite or wallet info is not just copying giant addresses back and forth.

The branding is cat-themed and memeable because I think Tari could use something fun and approachable, not just another serious DeFi dashboard. The style is playful, but I’m trying to make the tool actually useful.

Things I’m thinking about:

  • Local-first atomic swap UI

  • tTARI testnet swaps

  • Test asset creation/distribution tools

  • NFT testing and swap support

  • QR-code swap invites and wallet sharing

  • Better wallet/indexer status and error messages

  • Beginner-friendly setup guides

  • Possible YAT support later

  • Future cross-chain testnet routes

  • Future local-first liquidity/pool testing

To be clear, this is not a token sale, investment product, hosted exchange, or anything where users deposit funds into a centralized service. I’m aiming for open-source local tooling.

Longer term, if it becomes useful, I may look at optional donations or community grants to support development. I do not want the app to depend on forced platform fees or custody of user funds.

A few questions:

  1. What would you want from a Tari atomic swap/testing app?

  2. Would you care more about swaps, test assets, NFTs, QR-code invites, liquidity tools, or cross-chain routes?

  3. What feels most confusing right now with Ootle walletd, templates, ResourceBuilder assets, or testnet flows?

  4. Would beginner guides and easier local setup help?

  5. What mistakes should I avoid?

I’m just trying to build something useful instead of guessing. Any feedback, criticism, or feature ideas are welcome.

Thanks for your feedback and comments in advance!

4 Likes

I like the idea of a demo suite like this. Mentioning QR codes, are you anticipating this running on mobile devices?

Hell yeah!

Ease of use, primarily-- something that makes it clear that things work well on this chain.

Swaps and cross-chain capabilities are my big things. Having more and decentralized methods of doing these are really important. Making them generally accessible sounds great.

Yes-- documentation and guides are a critical and often overlooked part of any project like this. It’s always important to consider them at conception.

I think a lot more concrete feedback will be possible once there’s something to either look at or play with (designs or demos.) Cool project!

2 Likes

Thanks for your feedback. Everyone is vocal on telegram and quiet on here :laughing: I don’t know how to cite your questions/comments, but I know how to copy and paste.

Mentioning QR codes, are you anticipating this running on mobile devices?

*When I did my first two computer test, I saw how painful it was to send in raw form. I have a special shorter import/export code that the app recognizes now. The QR code was mostly so you could use your phone+computer for the invite. I haven’t fully completed QR codes yet, but it’s in the works alongside YATs. I looked into the mobile path. Right now it needs walletd, backend, and frontend running on a PC. In the future if the tooling exists, I would love to make it local on mobile. It would require a lot of work though.

Ease of use, primarily-- something that makes it clear that things work well on this chain.

*100% agree. That is the main thing I’m trying to build toward first. Not just making flows technically possible, but making them clear enough that people can see what worked, what happened on Tari/Ootle, and what the next step is. I want the app to act like a guided demo/testing layer so someone can run it locally and actually understand the flow without needing to already know every wallet, indexer, and template detail. It does it through one main button now. There are currently swap, create, assets, progress, how it works, and advanced tabs.

Swaps and cross-chain capabilities are my big things. Having more and decentralized methods of doing these are really important. Making them generally accessible sounds great.

*I agree. Swaps and cross-chain are the bigger long-term goals. I’m trying to build the Tari native foundation first: clear local swap testing, easier two person flows, QR/invite sharing, and public test assets/NFT testing. Once that is solid and repeatable, cross-chain routes are the natural next step (BTC testnet is the first experiment, then EVM on my roadmap). I want it to be decentralized and user controlled, but also understandable enough that normal people can actually test, use it, and eventually trust it.

Yes-- documentation and guides are a critical and often overlooked part of any project like this. It’s always important to consider them at conception.

*I completely agree. I’m trying to treat docs as part of the product, not an afterthought. The goal is beginner friendly setup, screenshots, troubleshooting notes, and simple explanations of what is happening in each Tari/Ootle flow. If the app only works for people who already understand every wallet, template, or indexer detail, then it misses the point.

I think a lot more concrete feedback will be possible once there’s something to either look at or play with (designs or demos). Cool project!

*Thanks, I appreciate it a lot! You are the first and only response. Feedback will be much better once there’s something visual or playable for all. I’m enjoying playing around with it and learning. I’m going to keep cleaning up the local flow and work toward screenshots, a short demo, or a rough test version. Once that’s ready, I’d love feedback on what feels confusing, what feels useful, and what would make Tari/Ootle testing easier for more people. I still have a lot to polish up and add to it. With all the changes happening with it, I’m just testing locally with one or two computers for now and making changes each day. Once it’s working well, I’m down. I’ll consider dropping some teaser images at some point, so it’s not completely underground.

1 Like

I would be interested in such an open source atomic swap capability for Tari. Let me know how I can help.

1 Like

I don’t know how I missed this when first posted, but I think this is a phenomenal showcase project.

1 Like

Thanks, I appreciate it :grinning_face: If you got anything you would like to see included, just let me know and I’ll see if it fits with the project.

Since the thread got a little more attention today, I figured I should give a quick update.

The app has come a long way since the first rough version. Public fungible swaps are working, NFT swaps are working, guided invites are working, and I’ve started QR/share invite and mobile friendly UI. Local hosted with mobile only seems really difficult right now.

I’ve also been building out the asset side, not just the swap side. The app can create and work with public fungible test assets, NFTs, and I’ve been doing a lot of stealth asset creation and testing too. That has helped test the full flow…create an asset, classify it correctly, swap it, fund it, claim/refund it, and inspect what actually happened.

A lot of the recent work has been security and privacy cleanup. I had an earlier stealth style route working, but after testing it more, some parts were still acting too much like a revealed/public flow. So I pulled that back and have been rebuilding it more carefully instead of overclaiming privacy.

That cleanup also improved route separation, asset classification, stale testnet asset handling, invite validation, and chain truth checks before funding. The main thing I want to prevent before wider testing is fake assets, fake templates, stale resource IDs, misleading labels, or bad invite payloads tricking someone.

I’m still working on stealth HTLCs, stealth asset cleanup, hybrid routes, Yat/QR support, and probably a more memeable cat UI refresh (the UI is pretty rough visually at the moment).

I already have the first outside tester in mind once the MVP is cleaned up. After that, I’d be interested in a few more testnet reviewers for UX and trust assumption feedback.

Still local testnet only, not hosted, not custody, and not mainnet ready, but it is getting closer to something other people can try.

4 Likes

I see you mentioned HTLCs, have you considered also looking at adaptor-signatures?

It was on my roadmap to look into more after the Tari Ootle side is complete and the GUI is improved. My focus right now was getting everything L2 related working reliably.

I have looked at adaptor signatures, mainly as a possible way to make the BTC, XMR, or other chain side of a swap less obvious. The problem is that Ootle is currently peg in only with no peg out, so adaptor signatures would probably need to be part of a separate L1 or submarine style swap design rather than the current Ootle flow. Every new chain introduced requires a whole new round of implementation and testing burden.

Most of my recent work has been on stealth UTXOs, first stealth tTARI and now user created stealth assets. Those HTLC routes are finally getting close to the finish line, so I’m focusing on finishing and hardening them before introducing another cryptographic rabbit hole. I’m also working with Stan on stealth related L2 commits, so that side has been taking most of my development time.

If need be adaptor signatures can be added to TariScript?

Before I go too far down the adaptor signature or L1 route, I’m more interested in what people actually want cross chain support to accomplish.

For cross chain swaps, would people want direct BTC/XMR ↔ XTM swaps, external assets swapped into Ootle assets, or some kind of route that lets users enter through one chain and exit through another?

The overall goal was to bring more attention and liquidity into Tari by letting people use its privacy features, but not in a way where someone outside the Tari ecosystem swaps in and then feels trapped on L2 because there is no peg out.

How would people here want that implemented, and what do you think users outside the Tari ecosystem would actually expect from it?

It will be a little while before I can seriously investigate any of these routes, since there is still plenty left to finish and harden in the current app first.

One of the original ideas was atomic swaps between L1 and L2.

Burning L1 to gain L2, takes time, doing an atomic swap between the two is quicker.