This nostalgic-driven project replicates, to some extent, the experience of buying and trading OSRS Items. The UI is totally based on the game. The assets were fetched from the internet, mostly from the Runescape API/Wiki itself.
Create a very simple user (username, password and a funny profile picture that you'll choose from an existing selection)
This user will then be able to search from items at the Marketplace - it's kinda a GE, but free of charge. The selected items will be sent to the user's inventory.
There is a "userlist" feature, where the current user can find other users (it doesn't have an online/offline indicator yet) by their name and ask to trade.
It's implemented using websockets. Initially, a trade request is sent to the intended target user. If they accept, the tradescreen settles for both of them. It's possible now to select existing items from the inventory to trade. The items will be shown on both screens. After accepting the trade offer, the items are exchanged and the screen closes.
Back in the day, I created a project named S.N.I. - It was a "social network" intended for a post-apocalyptic world, where the users could share their localization and items. At first, I didn't implement the item's trade logic, just the localization.
It was a challenge for some company, and they provided some boring icons for the items. When I start implementing the trade logic, I decided to use something cooler - a Runescape Items API. That project was abandoned and since I was using it as a core resource, my project got abandoned too. I was working pretty hard and didn't have the time to fix such a big flaw.
A month ago I was laid off and then I return to work on this project. A brand new backend was developed, this time I'm integrating with the "official" Runescape API directly, plus all the websockets, users and items logic.
It's hard to develop an app this big alone and with no funding (since it's just for portfolio), so there are some open bugs and minor issues that I'm tracking. They'll be fix as time goes by.
- redirect on logout
- login/create error handling
- Partial fix: You won't get accurate error messages, but it's better than having technical error messages
- improve inventory refresh
- inspect weird socket cases
- general style adjustments