An innovative blockchain-based digital stamps platform with wallet and marketplace features.
🌐 Live Demo | 📖 Documentation | 🛣️ Roadmap
- العربية 🇸🇦 | English 🇬🇧 | Deutsch 🇩🇪 | 中文 🇨🇳 | Français 🇫🇷 | Español 🇪🇸
- 🏦 Digital Wallet API - Create, manage, and transfer digital stamps securely
- 🛍️ Market Institution API - Buy, sell, and trade digital stamps in a marketplace
- 🔐 Secure P2P Transfers - Peer-to-peer transactions with full transaction history
- 🌐 Multi-Language Support - 6+ languages supported
- 🐳 Docker Ready - Full Docker and Docker Compose support
- ⚡ High Performance - Built with Express.js and Node.js
- Node.js >= 16.x
- Git
- Docker (optional, recommended)
# Clone repository
git clone https://github.com/zedanazad43/stp.git
cd stp
# Start with Docker Compose
docker compose up --build
# Access at http://localhost:8080# Install dependencies
npm install
# Start development server
npm run dev
# Access at http://localhost:8080See detailed guides:
Complete wallet management endpoints and examples: WALLET_API.md
Complete marketplace endpoints and examples: MARKET_API.md
# Install dependencies
npm install
# Development server
npm run dev
# Build for production
npm run build
# Start production server
npm start
# Run tests
npm test
# Run linting
npm lint# Build Docker image
npm run docker:build
# Run Docker container
npm run docker:run
# Or use Docker Compose
docker compose up
docker compose down- 🌐 Online Documentation Portal
- 📁 docs/ Directory
- 🔒 Security Guidelines
- 📋 Deployment Guide
- 🤝 Contributing Guide
For security information and guidelines, see SECURITY.md.
This project is licensed under the MIT License - see LICENSE for details.
Contributions are welcome! See CONTRIBUTING.md for guidelines.
- Author: Azad Zedan
- Repository: github.com/zedanazad43/stp
- Issues: GitHub Issues
Live Website: https://zedanazad43.github.io/stp/
See CHANGELOG.md for version history and updates.
Last Updated: 2025 Status: ✅ Active Development
هذا المشروع يدعم استخدام GitHub Actions Runner المضيف الذاتي (Self-hosted Runner) لبناء ونشر المشروع تلقائيًا.
- حساب GitHub
- وصول إلى مستودع المشروع
- نظام التشغيل Windows (مع PowerShell)
- افتح PowerShell
- أنشئ مجلدًا للـ Runner:
mkdir actions-runner cd actions-runner - قم بتنزيل Runner (نسخة Windows):
curl -o actions-runner-win-x64-2.331.0.zip -L https://github.com/actions/runner/releases/download/v2.331.0/actions-runner-win-x64-2.331.0.zip - قم بفك ضغط الملف:
Expand-Archive -Path actions-runner-win-x64-2.331.0.zip -DestinationPath .
- سجل الدخول إلى حساب GitHub الخاص بك
- اذهب إلى مستودعك
- من القمة اليمنى، انقر على 'Settings'
- في القمة اليسرى، انقر على 'Actions'
- في القمة اليسرى، انقر على 'Runners'
- انقر على زر 'New runner'
- انسخ عنوان URL ورمز Runner الظاهرين لك
- في PowerShell، انتقل إلى مجلد الـ Runner:
cd C:\Users\azadz\actions-runner - قم بتكوين الـ Runner باستخدام عنوان URL ورمزك:
استبدل
.\config.cmd --url YOUR_REPO_URL --token YOUR_RUNNER_TOKENYOUR_REPO_URLوYOUR_RUNNER_TOKENبالقيم الفعلية
- بعد التكوين بنجاح، قم بتشغيل الـ Runner:
.\run.cmd
لقد قمنا مسبقًا بإنشاء ملف سير العمل في .github/workflows/publish.yml. هذا الملف يقوم بالآتي:
- يستنسخ المستودع عند كل دفع إلى الفرع الرئيسي
- يثبت Node.js والتبعيات
- يقوم ببناء المشروع
- ينشر المشروع
لتخصيص سير العمل حسب احتياجاتك، قم بتعديل قسم "Deploy project" في ملف publish.yml.
بعد إعداد Runner وتكوين سير العمل، سيتم نشر المشروع تلقائيًا عند كل دفع إلى الفرع الرئيسي. يمكنك مراقبة سير العمل في قسم "Actions" في مستودعك على GitHub.
- إذا لم يبدأ الـ Runner، تحقق من وجود رسائل خطأ في نافذة PowerShell
- تأكد من أن عنوان URL ورمز Runner صحيحان وغير منتهي الصلاحية
- تأكد من أن الـ Runner لديه الأذونات الكافية للوصول إلى ملفات المشروع