Spaces:
Running
Running
| # π Deployment Guide for Hugging Face Spaces | |
| This guide explains how to deploy the updated Wildberries Analytics Dashboard to Hugging Face Spaces. | |
| ## π Prerequisites | |
| - Hugging Face account | |
| - Wildberries API token (optional for demo mode) | |
| - Git installed locally | |
| ## π οΈ Step-by-Step Deployment | |
| ### 1. Create a New Space | |
| 1. Go to [Hugging Face Spaces](https://huggingface.co/spaces) | |
| 2. Click **"Create new Space"** | |
| 3. Configure your space: | |
| - **Space name**: `wildberries-analytics` (or your preferred name) | |
| - **License**: MIT | |
| - **SDK**: **Gradio** | |
| - **Hardware**: CPU Basic (free tier) | |
| - **Visibility**: Public or Private | |
| ### 2. Clone Your Space | |
| ```bash | |
| git clone https://huggingface.co/spaces/YOUR_USERNAME/wildberries-analytics | |
| cd wildberries-analytics | |
| ``` | |
| ### 3. Add Project Files | |
| Copy all the updated project files to your space directory: | |
| ``` | |
| wildberries-analytics/ | |
| βββ app.py # Main application | |
| βββ requirements.txt # Dependencies | |
| βββ README.md # Space documentation | |
| βββ config.py # Configuration management | |
| βββ wildberries_client.py # API client | |
| βββ forecasting.py # Forecasting algorithms | |
| βββ dashboard.py # Visualization components | |
| βββ utils.py # Utilities and demo data | |
| βββ .gitignore # Git ignore patterns | |
| βββ examples/ | |
| βββ sample_data.json # Sample data for demo | |
| ``` | |
| ### 4. Configure Environment Variables (Optional) | |
| If you have a Wildberries API token: | |
| 1. Go to your Space page | |
| 2. Click **Settings** tab | |
| 3. Scroll to **Repository secrets** | |
| 4. Add a new secret: | |
| - **Name**: `WILDBERRIES_API_TOKEN` | |
| - **Value**: Your Wildberries API token | |
| ### 5. Commit and Push | |
| ```bash | |
| git add . | |
| git commit -m "Initial deployment of Wildberries Analytics Dashboard" | |
| git push | |
| ``` | |
| ### 6. Wait for Build | |
| - Hugging Face will automatically build your space | |
| - Check the **Logs** tab to monitor the build process | |
| - Build typically takes 2-5 minutes | |
| ## βοΈ Configuration Options | |
| ### Environment Variables | |
| | Variable | Required | Description | | |
| |----------|----------|-------------| | |
| | `WILDBERRIES_API_TOKEN` | No | Your Wildberries API token for real data | | |
| | `DEBUG` | No | Set to `true` for debug mode | | |
| | `GRADIO_THEME` | No | Gradio theme (`soft`, `default`, etc.) | | |
| ### Wildberries API Token Setup | |
| 1. **Get your token**: | |
| - Log into your Wildberries seller account | |
| - Go to Settings β Access to API | |
| - Generate token with permissions: | |
| - β Analytics | |
| - β Statistics | |
| - β Marketplace | |
| 2. **Token permissions needed**: | |
| ``` | |
| Bit 2: Access to Analytics | |
| Bit 5: Access to Statistics | |
| Bit 4: Access to Marketplace | |
| ``` | |
| ## π§ Customization | |
| ### Changing the Theme | |
| Edit `app.py` line with `gr.themes.Soft()`: | |
| ```python | |
| # Available themes: | |
| gr.themes.Default() | |
| gr.themes.Soft() | |
| gr.themes.Monochrome() | |
| gr.themes.Glass() | |
| ``` | |
| ### Adding More Languages | |
| Update the `README.md` metadata: | |
| ```yaml | |
| language: | |
| - en | |
| - ru | |
| ``` | |
| ### Custom Domain (Pro Feature) | |
| For custom domains, upgrade to a Pro space and configure in Settings. | |
| ## π¨ Troubleshooting | |
| ### Common Issues | |
| **1. Build Fails with Dependencies** | |
| ```bash | |
| # Check requirements.txt for version conflicts | |
| # Pin specific versions if needed | |
| gradio==5.7.1 | |
| pandas>=2.0.3 | |
| ``` | |
| **2. Import Errors** | |
| ```python | |
| # Ensure all modules are in the same directory | |
| # Check for typos in import statements | |
| ``` | |
| **3. API Connection Issues** | |
| - Verify token is correctly set in Spaces secrets | |
| - Check token permissions in Wildberries dashboard | |
| - Review API rate limits (300 requests/minute) | |
| **4. Demo Mode Not Working** | |
| - Check if `utils.py` contains demo data functions | |
| - Verify `examples/sample_data.json` exists | |
| ### Checking Logs | |
| 1. Go to your Space page | |
| 2. Click **Settings** tab | |
| 3. View **Container logs** for detailed error messages | |
| ### Performance Optimization | |
| **For better performance**: | |
| 1. Upgrade to CPU Upgrade hardware ($0.03/hour) | |
| 2. Use persistent storage for data caching | |
| 3. Optimize data processing in batch operations | |
| ## π Monitoring Usage | |
| ### Space Analytics | |
| - View usage statistics in Space settings | |
| - Monitor monthly compute costs | |
| - Track user interactions | |
| ### API Rate Limiting | |
| The dashboard automatically handles Wildberries API rate limits: | |
| - 300 requests per minute maximum | |
| - Exponential backoff on 429 errors | |
| - Graceful fallback to demo mode | |
| ## π Updates and Maintenance | |
| ### Updating the Application | |
| 1. Make changes locally | |
| 2. Test with demo mode | |
| 3. Commit and push to update Space: | |
| ```bash | |
| git add . | |
| git commit -m "Update: description of changes" | |
| git push | |
| ``` | |
| ### Monitoring API Changes | |
| - Subscribe to Wildberries API updates | |
| - Test regularly with your API token | |
| - Update error handling as needed | |
| ## π Support | |
| ### Getting Help | |
| 1. **Hugging Face Community**: [discuss.huggingface.co](https://discuss.huggingface.co) | |
| 2. **Gradio Documentation**: [gradio.app/docs](https://gradio.app/docs) | |
| 3. **Wildberries API Docs**: [dev.wildberries.ru](https://dev.wildberries.ru/en/openapi/api-information) | |
| ### Community Resources | |
| - Example Spaces: Browse similar analytics dashboards | |
| - Gradio Components: Explore advanced UI components | |
| - API Integration Patterns: Study other marketplace integrations | |
| ## π Advanced Features | |
| ### Adding More Marketplaces | |
| Extend the dashboard to support additional marketplaces: | |
| 1. Create new API client modules | |
| 2. Update configuration for multiple tokens | |
| 3. Add marketplace selection in UI | |
| ### Data Persistence | |
| For storing historical data: | |
| 1. Upgrade to persistent storage | |
| 2. Implement database integration | |
| 3. Add data export features | |
| ### Real-time Updates | |
| For live dashboard updates: | |
| 1. Implement WebSocket connections | |
| 2. Add auto-refresh functionality | |
| 3. Use Gradio's live update features | |
| --- | |
| **π Congratulations!** Your Wildberries Analytics Dashboard is now live on Hugging Face Spaces! | |
| Visit your space URL to start analyzing your marketplace data: `https://huggingface.co/spaces/YOUR_USERNAME/wildberries-analytics` |