dtdc-desktop Svelte Themes

Dtdc Desktop

🚀 Beautiful cross-platform DTDC shipment tracker with real-time updates, recent searches, and dark mode support. Built with Wails, Go, and Svelte.

DTDC Desktop Tracker

A beautiful, cross-platform desktop application for tracking DTDC shipments with real-time updates, visual milestones, detailed timeline views, and recent search history.

🌐 Web Version Available: Try our web-based tracker at https://dtdc-track.anir0y.in/

📸 Screenshots

🏠 Home Screen

Home Screen

Clean interface with search box and recent searches

ℹ️ About Page

About Page

App information and credits

✨ Features

  • 📦 Real-time Tracking - Get instant updates on your DTDC shipments
  • 🕒 Recent Searches - Clickable history of your last 5 tracking searches
  • Home Button - Easy navigation back to search from results
  • �🎯 Visual Milestones - See your package journey at a glance with progress indicator
  • 📅 Detailed Timeline - Complete event history with Load More pagination
  • 🎨 DTDC Branding - Beautiful red/orange corporate color scheme with gradients
  • Native Performance - Fast, lightweight desktop app
  • 🖥️ Modern UI - Clean, intuitive interface with tab navigation
  • 📱 Responsive Design - Works perfectly on all screen sizes
  • 🌓 Dark Mode Support - Automatically adapts to system theme
  • 💾 Local Logging - All tracking requests logged to dtdc_log.jsonl

📥 Download

Download the latest release for your platform:

  • macOS (Apple Silicon): dtdc-desktop-macos-arm64.zip
  • macOS (Intel): dtdc-desktop-macos-amd64.zip
  • Windows (64-bit): dtdc-desktop-windows-amd64.zip
  • Linux (64-bit): dtdc-desktop-linux-amd64.tar.gz (via GitHub Actions)

Note: Releases are automatically built for all platforms using GitHub Actions.

🚀 Quick Start

macOS

# Extract the zip file
unzip dtdc-desktop-macos-*.zip

# Remove quarantine attribute
xattr -cr dtdc-desktop.app

# Launch the app
open dtdc-desktop.app

Windows

# Extract the zip file
# Double-click dtdc-desktop.exe

Linux

# Extract the tarball
tar -xzf dtdc-desktop-linux-amd64.tar.gz

# Make executable (if needed)
chmod +x dtdc-desktop

# Run the app
./dtdc-desktop

🎯 Usage Guide

  1. Launch the app - Open dtdc-desktop
  2. Enter tracking number - Type your DTDC tracking ID in the search box
  3. Track shipment - Click "🔍 Track Shipment" button or press Enter
  4. View results - See visual milestones and detailed timeline
  5. Recent searches - After your first search, recent tracking IDs appear as clickable chips
  6. Quick re-track - Click any recent search to instantly track it again
  7. Home button - Click "🏠 Back to Home" to start a new search
  8. Switch shipments - Click different recent searches to switch between tracked packages
  9. Load more events - Click "Load More Events" for additional timeline history
  10. About tab - Click "About" to view app information

Note: Recent searches will appear after you track your first shipment. They're saved locally and persist between app sessions.

🎨 Tabs

📦 Tracker Tab

  • Search interface with tracking number input
  • Recent searches (clickable chips showing last 5 searches)
  • Active tracking indicator (highlights currently viewed shipment)
  • Visual milestone progress bar with completion status
  • Shipment information grid (from/to, dates, locations)
  • Timeline with Load More pagination (shows 10 events initially)
  • Home button for easy navigation

ℹ️ About Tab

🛠️ Technology Stack

  • Backend: Go 1.21+
  • Framework: Wails v2.10.2
  • Frontend: Svelte 3 + Vite 3
  • API: DTDC REST API
  • Styling: Custom CSS with DTDC red/orange branding and dark mode
  • Build: Cross-platform native executables

🏗️ Development

Prerequisites

  • Go 1.21 or higher
  • Node.js 18 or higher
  • Wails CLI v2.10.2

Setup

# Install Wails CLI
go install github.com/wailsapp/wails/v2/cmd/wails@latest

# Clone the repository
git clone https://github.com/yourusername/dtdc-desktop.git
cd dtdc-desktop

# Install frontend dependencies
cd frontend
npm install
cd ..

# Run in development mode
wails dev

Building

# Build for current platform
wails build -clean

# Build for specific platforms
wails build -platform darwin/arm64    # macOS Apple Silicon
wails build -platform darwin/amd64    # macOS Intel
wails build -platform windows/amd64   # Windows 64-bit
wails build -platform linux/amd64     # Linux 64-bit (on Linux only)

# Output directory
build/bin/

GitHub Actions

The project includes automated builds for all platforms via GitHub Actions. Simply push a tag to trigger a release:

git tag -a v1.0.0 -m "Release v1.0.0"
git push origin v1.0.0

📁 Project Structure

dtdc-desktop/
├── app.go                    # Main application logic
├── tracking.go              # DTDC API integration
├── main.go                  # Entry point
├── wails.json               # Wails configuration
├── frontend/
│   ├── src/
│   │   ├── App.svelte       # Main UI component
│   │   └── style.css        # DTDC themed styles
│   └── package.json         # Frontend dependencies
└── build/
    └── bin/
        └── dtdc-desktop.app # Built application

🎨 Color Scheme (DTDC Branding)

  • Primary Red: #E31837
  • Secondary Orange: #FF6B35
  • Success Green: #48bb78
  • Text Dark: #2d3748
  • Background: White with red/orange gradients

🐛 Troubleshooting

macOS: App won't open

# Remove macOS quarantine attribute
xattr -cr dtdc-desktop.app

macOS: "App is damaged" message

This happens when the app is downloaded from the internet. Remove the quarantine attribute:

xattr -cr dtdc-desktop.app

Clean rebuild

# Remove build artifacts and rebuild
rm -rf build/bin
wails build -clean

Frontend issues

# Clean and reinstall frontend dependencies
cd frontend
rm -rf node_modules package-lock.json
npm install
cd ..

🎨 Color Scheme (DTDC Branding)

Light Mode

  • Primary Red: #E31837
  • Secondary Orange: #FF6B35
  • Success Green: #48bb78
  • Text Dark: #2d3748
  • Background: #f5f7fa

Dark Mode

  • Primary Orange: #FF6B35
  • Secondary Orange: #FF8C5C
  • Success Green: #48bb78
  • Text Light: #e2e8f0
  • Background: #1a202c

📁 Project Structure

dtdc-desktop/
├── .github/
│   └── workflows/
│       └── build-release.yml    # GitHub Actions workflow
├── app.go                       # Main application logic
├── tracking.go                  # DTDC API integration & logging
├── main.go                      # Entry point
├── wails.json                   # Wails configuration
├── LICENSE                      # MIT License
├── README.md                    # This file
├── frontend/
│   ├── src/
│   │   ├── App.svelte          # Main UI component
│   │   ├── style.css           # DTDC themed styles with dark mode
│   │   └── main.js             # Frontend entry
│   ├── wailsjs/                # Auto-generated Go bindings
│   └── package.json            # Frontend dependencies
└── build/
    ├── bin/                    # Compiled applications
    ├── darwin/                 # macOS build resources
    └── windows/                # Windows build resources

🔐 Privacy & Data

  • No data collection: The app does not collect or send any personal data
  • Local logging only: All tracking requests are logged locally to dtdc_log.jsonl
  • Direct API calls: Communicates directly with DTDC API
  • No analytics: No tracking or analytics of any kind

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

⚠️ Disclaimer

This is an independent tool and is not officially affiliated with DTDC. DTDC® is a registered trademark of their respective owners.

👤 Author

Animesh Roy

🙏 Acknowledgments

📊 Project Stats

  • Size: ~8-9 MB per platform
  • Build time: ~3-5 seconds per platform
  • Dependencies: Minimal (Go standard library + Wails)
  • Performance: Native speed with low memory footprint

Built with ❤️ using Wails v2.10.2 and Svelte

Made for better package tracking experience

📝 Development Setup

# Install Wails CLI
go install github.com/wailsapp/wails/v2/cmd/wails@latest

# Install frontend dependencies
cd frontend
npm install

# Run in development mode
cd ..
wails dev

📄 License

MIT License

👤 Author

Animesh

🙏 Acknowledgments


Built with ❤️ using Wails v2.10.2

Top categories

Loading Svelte Themes