{"id":23909811,"url":"https://github.com/xenoswarlocks/email_pattern_verification","last_synced_at":"2026-06-15T04:31:27.604Z","repository":{"id":270847645,"uuid":"911642669","full_name":"XenosWarlocks/Email_Pattern_Verification","owner":"XenosWarlocks","description":"An webapp to verify email based on their patterns","archived":false,"fork":false,"pushed_at":"2025-01-03T13:58:38.000Z","size":42,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-17T04:09:06.365Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/XenosWarlocks.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-03T13:57:27.000Z","updated_at":"2025-01-03T13:58:41.000Z","dependencies_parsed_at":"2025-01-03T14:45:40.606Z","dependency_job_id":"67196d32-1b34-477a-81bf-b16f7d5637dd","html_url":"https://github.com/XenosWarlocks/Email_Pattern_Verification","commit_stats":null,"previous_names":["xenoswarlocks/email_pattern_verification"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/XenosWarlocks/Email_Pattern_Verification","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XenosWarlocks%2FEmail_Pattern_Verification","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XenosWarlocks%2FEmail_Pattern_Verification/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XenosWarlocks%2FEmail_Pattern_Verification/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XenosWarlocks%2FEmail_Pattern_Verification/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/XenosWarlocks","download_url":"https://codeload.github.com/XenosWarlocks/Email_Pattern_Verification/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/XenosWarlocks%2FEmail_Pattern_Verification/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34348291,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-05T06:33:31.561Z","updated_at":"2026-06-15T04:31:27.588Z","avatar_url":"https://github.com/XenosWarlocks.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n\r\n```bash\r\npython api.py\r\nstreamlit run streamlit_app.py\r\n```\r\n\r\n- Build and run the Docker container:\r\n\r\n```bash\r\ndocker build -t email-verifier .\r\ndocker run -p 5000:5000 email-verifier\r\n```\r\n\r\n## For cloud deployment:\r\n\r\n1. Heroku:\r\n\r\n```bash\r\n# Create a Procfile\r\necho \"web: python app.py\" \u003e Procfile\r\n# Deploy\r\nheroku create\r\ngit push heroku main\r\n```\r\n\r\n2. Google Cloud Run:\r\n\r\n```bash\r\n# Build and deploy\r\ngcloud builds submit --tag gcr.io/PROJECT_ID/email-verifier\r\ngcloud run deploy --image gcr.io/PROJECT_ID/email-verifier --platform managed\r\n```\r\n\r\n## Directory structure\r\n\r\n```\r\nemail_verifier/\r\n├── api.py\r\n├── email_verifier.py\r\n├── requirements.txt\r\n├── templates/\r\n│   ├── streamlit_app.py\r\n│   └── index.html\r\n└── Dockerfile\r\n```\r\n\r\n```bash\r\n# DockerFile\r\nFROM python:3.9-slim\r\n\r\nWORKDIR /app\r\n\r\nCOPY requirements.txt .\r\nRUN pip install --no-cache-dir -r requirements.txt\r\n\r\nCOPY . .\r\n\r\nEXPOSE 8501\r\n\r\nCMD [\"streamlit\", \"run\", \"app.py\", \"--server.port=8501\", \"--server.address=0.0.0.0\"]\r\n```\r\n\r\n```bash\r\n# Dockerfile.frontend\r\nFROM python:3.9-slim\r\n\r\nWORKDIR /app\r\n\r\nCOPY requirements.txt .\r\nRUN pip install --no-cache-dir -r requirements.txt\r\n\r\nCOPY . .\r\n\r\nEXPOSE 8501\r\n\r\nWORKDIR /app/frontend\r\nCMD [\"streamlit\", \"run\", \"streamlit_app.py\", \"--server.port=8501\", \"--server.address=0.0.0.0\"]\r\n```\r\n```bash\r\n# Dockerfile.api\r\nFROM python:3.9-slim\r\n\r\nWORKDIR /app\r\n\r\nCOPY requirements.txt .\r\nRUN pip install --no-cache-dir -r requirements.txt\r\n\r\nCOPY . .\r\n\r\nEXPOSE 5000\r\n\r\nCMD [\"python\", \"api.py\"]\r\n```\r\n```bash\r\n# docker-compose.yml\r\nversion: '3.8'\r\n\r\nservices:\r\n  api:\r\n    build: \r\n      context: .\r\n      dockerfile: Dockerfile.api\r\n    ports:\r\n      - \"5000:5000\"\r\n    volumes:\r\n      - ./logs:/app/logs\r\n    environment:\r\n      - FLASK_ENV=production\r\n\r\n  frontend:\r\n    build:\r\n      context: .\r\n      dockerfile: Dockerfile.frontend\r\n    ports:\r\n      - \"8501:8501\"\r\n    depends_on:\r\n      - api\r\n    environment:\r\n      - API_URL=http://api:5000\r\n      \r\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxenoswarlocks%2Femail_pattern_verification","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxenoswarlocks%2Femail_pattern_verification","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxenoswarlocks%2Femail_pattern_verification/lists"}