Traqora is a decentralized travel booking platform that allows users to book flights directly using blockchain technology on the Stellar ecosystem.
Traqora eliminates intermediaries in the traditional travel booking system by leveraging the Stellar blockchain. This enables transparent, low-cost, and secure travel bookings with direct interaction between users and service providers.
Key benefits include:
- Transparent and immutable flight bookings
- Low transaction fees
- Direct user-to-airline interactions
- Automated refunds, cancellations, and dispute resolution via smart contracts
Users can search and book flights directly with airlines.
All bookings are handled through secure Soroban-based smart contracts on the Stellar network.
Payments can be made using stablecoins or native tokens on the Stellar platform.
Cancellations and refund processes are automatically executed via smart contracts, ensuring fast and fair resolutions.
An optional token-based governance system allows users to vote on proposed protocol upgrades.
Frequent travelers are rewarded through a decentralized loyalty program built into the protocol.
Traqora is built using a robust and scalable tech stack designed for performance and security on the Stellar network.
Blockchain:
- Stellar (Layer 1 blockchain)
Smart Contracts:
- Soroban (native smart contract platform for Stellar)
Frontend:
- Next.js
- Integrated with Stellar-compatible wallets like Freighter and Albedo
Off-chain Data Storage:
- IPFS and Arweave are used for storing metadata securely and decentralizing file storage
Wallet Support:
- Compatible with Freighter, Albedo, and Rabet wallets
Testing Tools:
- Soroban CLI for smart contract development and testing
- Stellar SDK for integration testing
Monitoring & Analytics:
- Stellar Expert for on-chain data tracking
- Dune Analytics for advanced analytics dashboards
For a quick and easy setup of the entire development environment (including PostgreSQL, Redis, and a local Stellar node), we recommend using Docker Compose.
Refer to the DOCKER_SETUP.md for detailed instructions.
docker-compose up -dBefore you begin, ensure the following tools are installed on your machine:
- Stellar CLI (to interact with the Stellar network)
- Node.js (v18 or higher)
- Git (to clone and manage the repository)
- Docker & Docker Compose (optional, for local infrastructure dependencies)
Run the following commands in your terminal:
git clone https://github.com/your-username/traqora.git
cd traqoraCopy the example environment variable files:
# Central env.example at repo root
cp env.example .env
# Backend env.example in packages/backend/
cp packages/backend/env.example packages/backend/.envOpen these files and configure the environment variables as needed. Refer to the comments in env.example and packages/backend/env.example for detailed information on types and default values.
From the repository root, install dependencies for the entire monorepo:
npm install --legacy-peer-depsTo run both the backend and client packages in development mode:
npm run devAlternatively, you can run individual packages:
# Start backend dev server only
npm run dev --workspace=packages/backend
# Start client/frontend dev server only
npm run dev --workspace=packages/clientUse Freighter, Albedo, or Rabet wallet in your browser to connect and interact with the Traqora dApp.
To run tests across all workspaces:
npm run testFor smart contract testing:
soroban testBefore deploying Traqora to a staging or production environment, review the Production Deployment Checklist to ensure all steps are correctly followed.
Key sections of the checklist include:
- Pre-deployment checks (verifying tests, building contracts, configuring secrets)
- Soroban contract deployment and retrieving contract IDs
- Configuring backend and client environment variables
- Running database migrations
- Post-deployment smoke testing and health checks
- Rollback strategies
We welcome contributions from the community. Please refer to our Contributing Guide before submitting any pull requests.
This project is licensed under the MIT License. See the LICENSE file for more information.