forked from TechX-Resources/MedDigest
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
55 lines (41 loc) · 1.47 KB
/
Copy pathmain.py
File metadata and controls
55 lines (41 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env python3
"""
MedDigest - Main Entry Point
This module serves as the main entry point for the MedDigest application.
It orchestrates the research digest generation and newsletter distribution process.
"""
import logging
import sys
# Local application imports
from newsletter_generator import generate_newsletter_workflow
from newsletter_sender import send_newsletter_workflow
def setup_logging() -> logging.Logger:
"""Configure and return a logger instance."""
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
handlers=[
logging.StreamHandler(sys.stdout),
]
)
return logging.getLogger(__name__)
def main() -> None:
"""
Main entry point for the MedDigest application.
Orchestrates the complete workflow:
1. Newsletter generation (research digest + newsletter creation)
2. Newsletter distribution (email sending)
"""
global logger
logger = setup_logging()
logger.info("🚀 Starting MedDigest application...")
# Step 1: Generate newsletter
newsletter_content = generate_newsletter_workflow()
if not newsletter_content:
logger.error("❌ Newsletter generation failed. Exiting.")
return
# Step 2: Send newsletter email
send_newsletter_workflow(newsletter_content)
logger.info("🎉 MedDigest application completed successfully!")
if __name__ == "__main__":
main()