Inspiration
Hi everyone, this is Zuttora.
I have always been interested in trading platforms and the engineering behind them. While working on trading related software, I realised that there are many things you can learn about trading by actually using a terminal rather than just reading about strategies.
That made me think: what if there was a place where anyone could open a trading terminal, experiment, make mistakes, and practise without worrying about losing real money?
That idea became Zuttora.
What it does
Zuttora is a paper trading terminal designed to make practising trading feel closer to using a real trading platform.
You can explore markets, place buy and sell orders, manage positions, track your portfolio, and practise different trading ideas without risking real money.
The goal is simple: anyone who is curious about trading should be able to sit down and practise whenever they want, as many times as they like.
How I built it
I built Zuttora as a full stack application using Next.js, React, TypeScript, Node.js, Express, PostgreSQL, and Redux.
The frontend handles the trading interface and application state, while the backend manages users, orders, portfolios, market data, and other trading logic.
I also used Docker to containerise the backend and database and deployed the application so people can actually use it rather than just seeing a demo running locally.
A lot of the work went into making the application feel responsive and keeping the different parts of the system synchronised while market data and user actions are constantly changing.
Challenges I ran into
The hardest part was not building the individual screens. It was making everything work together reliably.
Trading involves a lot of changing state. Prices can change while a user is placing an order, portfolio values need to update correctly, and the frontend and backend need to stay consistent.
I also had to think about edge cases around order validation, price changes, portfolio calculations, and making the experience feel realistic while keeping it completely paper based.
Accomplishments that I'm proud of
I am most proud that Zuttora went from an idea to an actual usable trading terminal.
Instead of stopping at a prototype, I built the complete flow around markets, orders, positions, and portfolios and deployed it so other people can actually try it.
I also enjoyed working on the parts that are not immediately visible, especially the backend logic and state management required to make the terminal behave like a real application.
What I learned
This project taught me that building a trading application is mostly about handling state, edge cases, and consistency.
I learned a lot about designing real time application flows, connecting frontend state with backend logic, working with databases, and deploying a full stack application.
More importantly, I learned that a project becomes much more interesting once other people can actually use it and find things that you never noticed during development.
What's next for Zuttora
Zuttora is still evolving.
I want to keep improving the trading experience, add more markets and features, improve the realism of the paper trading environment, and make the platform more useful for people who are learning or experimenting with trading strategies.
For now, I would love to get Zuttora in front of more people, see how they use it, and use their feedback to decide what to build next.
Built With
- api
- caddy
- docker
- express.js
- next.js
- node.js
- postgresql
- react
- redux
- rest
- typescript
- websockets
Log in or sign up for Devpost to join the conversation.