Journo is a trading journal application that helps traders log trades, track performance, and analyze trading behavior. It supports realized P&L tracking, win rate calculation, risk management insights, and wallet management, giving traders the tools they need to improve consistency.
-
📊 Trade Analytics
- Total trades, win rate, P&L breakdown, net profit.
- Average win/loss & R:R ratios (configurable).
-
💰 Wallet Management
- Multiple trading wallets.
- Tracks balance in different currencies.
-
📝 Trade Logging
- Record entry, stop loss, take profit, lot size, and asset.
- Tracks both open and closed trades.
-
🔍 Performance Tracking
- Tracks trade outcomes (
won,loss,breakeven). - Monitors realized returns (
performance.totalReturn).
- Tracks trade outcomes (
-
🔒 Authentication & Security
- User-based trade history.
- JWT authentication for secure API access.
- Backend: Node.js, Express.js, MongoDB (Mongoose ORM)
- Frontend: React for Web App and React Native for mobile Apps
- Authentication: JWT
- Other: TailwindCSS, Redux Toolkit, Axios
journo-app/
│── backend/ # Express + MongoDB backend
│ ├── models/ # Trade, Wallet, User schemas
│ ├── routes/ # API endpoints
│ ├── controllers/ # Trade & analytics logic
│ └── services/ # Provider
│
│── frontend/ # React frontend
│ ├── src/components/ # Reusable UI components
│ ├── src/pages/ # Dashboard, Analytics, Trade Form
│ └── src/store/ # Redux slices
│
│── README.md
│── package.json
│── .env.example- Clone the repo
git clone https://github.com/vulpes231/fs-journo-server.git
cd journo-app- Setup backend
cd backend
npm install
cp .env.example .env # add MongoDB URI, JWT secret, etc.
npm run dev- Setup frontend
cd frontend
npm install
npm run devFetch all trades for a user.
Create a new trade.
Edit an existing trade (update SL/TP, etc).
Fetch trade analytics (P&L, win rate, etc).
{
"totalTrades": 12,
"totalOpen": 3,
"totalClosed": 9,
"totalWins": 6,
"winRate": 50,
"totalProfit": 340.25,
"totalLoss": -120.5,
"netProfit": 219.75
}Contributions are welcome!
- Fork the repo
- Create a new branch (
feature/new-feature) - Commit your changes
- Open a PR 🚀
MIT License © 2025 – [Adebayo Olayinka]