{ "app_settings": { "title": "Multi-Source Research Assistant", "description": "Comprehensive research analysis combining multiple data sources", "version": "1.0.0", "debug_mode": false }, "rate_limits": { "github_api": { "calls_per_minute": 30, "max_retries": 3, "retry_delay": 3, "search_rate_limit": 10, "core_rate_limit": 5000, "min_remaining_threshold": 5, "wait_time_multiplier": 1.5 }, "arxiv_api": { "calls_per_minute": 20, "max_retries": 3, "retry_delay": 10 }, "producthunt_api": { "calls_per_minute": 25, "max_retries": 3, "retry_delay": 5 }, "reddit_api": { "global_rate_limit": 60, "model_rate_limit": 45, "search_rate_limit": 45, "content_rate_limit": 60, "max_retries": 3, "retry_delay": 5, "backoff_multiplier": 2, "max_backoff": 300, "rate_limit_buffer": 0.1 } }, "timeouts": { "api_request": 300, "analysis": 400, "summary_generation": 300, "total_operation": 800, "github": { "search": 30, "repo_analysis": 60, "batch_timeout": 180, "query_preprocessing": 20 } }, "batch_settings": { "max_batch_size": 10, "processing_delay": 1, "max_items_per_request": 30, "github": { "max_search_results": 20, "max_analyze_per_batch": 5, "min_stars_threshold": 5, "max_description_length": 1000, "relevance_score_threshold": 0.6 } }, "reddit_settings": { "search": { "max_results_per_subreddit": 5, "posts_per_subreddit": 5, "batch_size": 20, "time_filter": "year", "sort_options": ["relevance", "hot", "top", "new"], "default_sort": "relevance", "syntax": "cloudsearch", "pagination_delay": 1 }, "resource_limits": { "max_concurrent_searches": 4, "max_retries_per_request": 3, "request_timeout": 25 }, "content_processing": { "max_title_length": 300, "max_content_length": 40000, "content_chunk_size": 2000 } }, "producthunt_settings": { "search": { "max_results": 5, "max_batch_size": 10, "keyword_match_count": 20, "weights": { "name_weight": 1.0, "tagline_weight": 3.0 } }, "api": { "max_retries": 3, "retry_delay": 5, "request_delay": 1 }, "semantic_analysis": { "batch_size": 5, "timeout": 60, "min_score_threshold": 0.3 } }, "cache": { "enabled": true, "max_size": 2000, "ttl": 7200, "cleanup_interval": 600 }, "memory_management": { "gc_collect_frequency": 10, "max_retries": 3, "cleanup_on_error": true, "batch_gc_threshold": 5 }, "github_settings": { "search": { "min_query_length": 3, "max_query_length": 256, "default_order": "desc", "fallback_enabled": true, "languages_priority": ["python", "javascript", "typescript", "java", "go"], "exclude_archived": true, "exclude_forks": true, "initial_result_count": 20, "relevance_scoring_count": 10, "final_analysis_count": 5, "default_sort": "best-match", "preprocessing": { "min_keyword_length": 3, "max_keywords": 4, "gemini_enhancement": { "temperature": 0.1, "top_k": 10, "top_p": 0.5, "max_retries": 3 }, "nlp_extraction": { "min_relevance_score": 0.6, "max_tokens_per_keyword": 20, "pos_weights": { "NOUN": 1.0, "VERB": 0.8, "ADJ": 0.6 } } } }, "analysis": { "relevance_weights": { "stars": 2.0, "recency": 1.5, "description_similarity": 8.0, "topics_match": 0.3 }, "max_analysis_retries": 2, "max_concurrent_analyses": 3 } }, "allowed_subreddits": [ "InternetIsBeautiful", "Indiewebdev", "SideProject", "Productivity", "HuggingFace", "ArtificialInteligence", "MachineLearning", "deeplearning", "webdev", "Futurology", "ProductHunters", "coolgithubprojects", "github" ], "error_handling": { "max_retries": 3, "retry_delay_base": 2, "retry_delay_max": 10, "fail_fast": false, "retry_status_codes": [429, 500, 502, 503, 504] }, "ui_settings": { "theme": "default", "max_input_length": 1000, "refresh_interval": 5000, "show_progress": true } }