10 KiB
10 KiB
PromptTech Solutions - Workspace Structure
📁 Project Organization
PromptTech_Solution_Site/
│
├── 📄 README.md # Main project documentation
├── 📄 WORKSPACE_STRUCTURE.md # This file - workspace organization guide
├── 📄 .gitignore # Git ignore rules
├── 📄 yarn.lock # Yarn dependencies lock file
├── 📄 nohup.out # Background process output
│
├── 📂 backend/ # Backend FastAPI application
│ ├── server.py # Main FastAPI server
│ ├── models.py # SQLAlchemy ORM models
│ ├── database.py # Database configuration
│ ├── create_admin.py # Admin user creation script
│ ├── requirements.txt # Python dependencies
│ └── __pycache__/ # Python cache files
│
├── 📂 frontend/ # Frontend React application
│ ├── package.json # Node.js dependencies
│ ├── craco.config.js # CRACO configuration
│ ├── jsconfig.json # JavaScript configuration
│ ├── tailwind.config.js # Tailwind CSS configuration
│ ├── postcss.config.js # PostCSS configuration
│ ├── components.json # UI components configuration
│ ├── build/ # Production build output
│ ├── public/ # Static assets
│ │ ├── index.html # HTML template
│ │ └── logo.png # PTB logo
│ └── src/ # Source code
│ ├── App.js # Main app component
│ ├── index.js # Entry point
│ ├── components/ # React components
│ │ ├── cards/ # Card components
│ │ ├── layout/ # Layout components (Navbar, Footer)
│ │ └── ui/ # shadcn/ui components
│ ├── context/ # React contexts
│ │ ├── AuthContext.js # Authentication context
│ │ ├── CartContext.js # Shopping cart context
│ │ └── ThemeContext.js # Theme context
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utility libraries
│ └── pages/ # Page components
│ ├── Home.js
│ ├── Products.js
│ ├── Services.js
│ ├── AdminDashboard.js # Admin panel
│ └── ...
│
├── 📂 docs/ # Documentation
│ ├── design_guidelines.json # Design system guidelines
│ ├── features/ # Feature documentation
│ │ ├── USER_MANAGEMENT_FEATURE.md
│ │ ├── FEATURE_MULTI_IMAGE_RICHTEXT.md
│ │ └── INVENTORY_FEATURES.md
│ ├── guides/ # User and admin guides
│ │ ├── ADMIN_GUIDE.md
│ │ ├── PM2_GUIDE.md
│ │ ├── QUICK_START.md
│ │ ├── USAGE_GUIDE.md
│ │ └── README_QUICK_START.txt
│ └── reports/ # Technical reports
│ ├── DATABASE_HEALTH_REPORT.md
│ ├── DATABASE_OPTIMIZATION_REPORT.md
│ ├── DATABASE_QUICK_REFERENCE.md
│ ├── DEEP_DEBUG_REPORT.md
│ ├── PERFORMANCE_FIXES.md
│ ├── PERFORMANCE_OPTIMIZATIONS.md
│ ├── SERVICES_INVENTORY_REPORT.md
│ ├── SERVICES_STATUS_REPORT.md
│ ├── RELOAD_ISSUE_DIAGNOSIS.md
│ ├── ADMIN_SERVICES_FIX.md
│ ├── FIX_SUMMARY.md
│ ├── PERMANENT_FIX_SUMMARY.md
│ ├── README_REFACTORING.md
│ ├── REFACTORING_COMPLETE.md
│ ├── REFACTORING_REPORT.md
│ ├── ROOT_CAUSE_BROWSER_CACHE.txt
│ ├── IMAGE_UPLOAD_TESTING.md
│ ├── test_inventory_toggle.md
│ └── test_result.md
│
├── 📂 scripts/ # Utility scripts
│ ├── ecosystem.config.json # PM2 ecosystem configuration
│ ├── start_backend.sh # Backend startup script
│ ├── start_frontend.sh # Frontend startup script
│ ├── start_with_pm2.sh # PM2 startup script
│ ├── stop_pm2.sh # PM2 stop script
│ ├── check_services.sh # Service health check
│ ├── check_status.sh # Status check script
│ ├── diagnose_services.sh # Service diagnostics
│ ├── verify_admin_features.sh # Admin features verification
│ ├── verify_services_complete.sh
│ ├── test_database_integration.sh
│ ├── test_refactoring.sh
│ ├── test_reload_performance.sh
│ ├── test_service_database.sh
│ ├── test_services_complete.sh
│ ├── test_services_inventory.sh
│ ├── deep_debug_test.sh
│ ├── final_verification.sh
│ └── ...
│
├── 📂 tests/ # Test files
│ ├── __init__.py # Python test package
│ ├── admin_test.py # Admin functionality tests
│ ├── backend_test.py # Backend API tests
│ └── test_api.html # API testing HTML page
│
├── 📂 test_reports/ # Test execution reports
│ ├── iteration_1.json
│ └── iteration_2.json
│
├── 📂 logs/ # Application logs
│
├── 📂 Logo/ # Brand assets
│ └── PTB-logo.png # PromptTech Solutions logo
│
└── 📂 archive/ # Archived/deprecated files
├── techzone-source/ # Original TechZone source code
├── techzone-source.zip # Original source backup
└── memory/ # Old memory/context files
└── PRD.md
🗂️ Folder Descriptions
Core Application Folders
/backend/
Contains the FastAPI backend application with:
- RESTful API endpoints
- Database models and migrations
- Authentication and authorization
- Admin dashboard APIs
- Image upload handling
- Report generation (CSV, PDF)
Tech Stack: Python 3.x, FastAPI 2.0, SQLAlchemy, PostgreSQL, Bcrypt, JWT
/frontend/
Contains the React frontend application with:
- E-commerce product catalog
- Service booking system
- Shopping cart and checkout
- Admin dashboard with full CRUD
- User authentication
- Image upload and management
- Rich text editor integration
Tech Stack: React 19, TipTap 3.15, Tailwind CSS, shadcn/ui, Axios
Documentation Folders
/docs/features/
Feature-specific documentation for:
- User Management System (RBAC with 5 roles)
- Multi-image upload with rich text editor
- Inventory management with filters and pagination
/docs/guides/
User and administrator guides:
- Admin Dashboard Guide
- PM2 Process Manager Guide
- Quick Start Guide
- General Usage Guide
/docs/reports/
Technical reports and analysis:
- Database optimization reports
- Performance analysis and fixes
- Debugging reports
- Refactoring documentation
- Test results
Utility Folders
/scripts/
Operational scripts for:
- Starting/stopping services (PM2)
- Health checks and diagnostics
- Testing and verification
- Database operations
/tests/
Testing files including:
- Python unit tests
- API integration tests
- HTML test pages
/test_reports/
JSON reports from test execution iterations
/archive/
Deprecated or historical files:
- Original TechZone source code
- Old memory/context files
- Backup archives
🚀 Quick Access
Start the Application
# Using PM2 (recommended)
./scripts/start_with_pm2.sh
# Or start services individually
./scripts/start_backend.sh
./scripts/start_frontend.sh
Access Points
- Frontend: http://localhost:5300
- Backend API: http://localhost:8181
- API Docs: http://localhost:8181/docs
Admin Access
- Email: admin@techzone.com
- Password: admin123
- Dashboard: http://localhost:5300/admin-dashboard
📚 Key Documentation Files
| File | Description |
|---|---|
| README.md | Main project overview |
| docs/guides/QUICK_START.md | Get started quickly |
| docs/guides/ADMIN_GUIDE.md | Admin dashboard usage |
| docs/guides/PM2_GUIDE.md | Process management |
| docs/features/USER_MANAGEMENT_FEATURE.md | User management system |
| docs/features/INVENTORY_FEATURES.md | Inventory management |
🛠️ Maintenance Scripts
| Script | Purpose |
|---|---|
scripts/check_services.sh |
Check service health |
scripts/check_status.sh |
View PM2 status |
scripts/stop_pm2.sh |
Stop all services |
scripts/verify_admin_features.sh |
Test admin features |
📝 Notes
- All scripts in
/scripts/should be executable (chmod +x script_name.sh) - PM2 ecosystem configuration is in
/scripts/ecosystem.config.json - Frontend build output is in
/frontend/build/ - Backend Python virtual environment:
/backend/venv/ - Database: PostgreSQL (techzone database)
- Uploaded files stored in:
/backend/uploads/
🔐 Environment Variables
Backend uses:
DATABASE_URL- PostgreSQL connection stringSECRET_KEY- JWT token secretCORS_ORIGINS- Allowed CORS origins
Frontend uses:
REACT_APP_BACKEND_URL- Backend API URL
📦 Dependencies
Backend
See /backend/requirements.txt for Python packages
Frontend
See /frontend/package.json for Node.js packages
🗄️ Database
- Database: techzone
- User: techzone_user
- Port: 5432
- Tables: 15+ tables including users, products, services, orders, etc.
📮 Support
For issues or questions, refer to:
- Quick Start Guide:
docs/guides/QUICK_START.md - Admin Guide:
docs/guides/ADMIN_GUIDE.md - Technical Reports:
docs/reports/
Last Updated: January 12, 2026
Company: PromptTech Solutions
Project: E-commerce Platform with Admin Dashboard