{"id":22161165,"url":"https://github.com/mr-destructive/newsletter","last_synced_at":"2026-01-19T21:34:00.477Z","repository":{"id":38028530,"uuid":"433711448","full_name":"Mr-Destructive/newsletter","owner":"Mr-Destructive","description":"A newsletter app made from Django + Python + PostgreSQL","archived":false,"fork":false,"pushed_at":"2022-06-11T09:37:52.000Z","size":22,"stargazers_count":2,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-12T16:33:01.995Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mr-Destructive.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-01T06:33:40.000Z","updated_at":"2023-06-27T21:37:33.000Z","dependencies_parsed_at":"2022-09-13T07:51:30.507Z","dependency_job_id":null,"html_url":"https://github.com/Mr-Destructive/newsletter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mr-Destructive/newsletter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-Destructive%2Fnewsletter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-Destructive%2Fnewsletter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-Destructive%2Fnewsletter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-Destructive%2Fnewsletter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mr-Destructive","download_url":"https://codeload.github.com/Mr-Destructive/newsletter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mr-Destructive%2Fnewsletter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28585524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-19T20:45:59.482Z","status":"ssl_error","status_checked_at":"2026-01-19T20:45:41.500Z","response_time":67,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"2024-12-02T04:13:29.042Z","updated_at":"2026-01-19T21:34:00.459Z","avatar_url":"https://github.com/Mr-Destructive.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Newsletter App \n\n### A Python/Django Application to fetch latest articles from RSS Feeds of some Programming/Developer Blogging sites and parse them in a Newsletter email.\n\nThe Newsletter App has several components like feed aggregator into the database, email form, newsletter subscription form and the actual website for interacting with all the components.\n\nFirstly, thee Newsletter Subscription form allows to get email from the users and saves into the database, next using the feedparser module in Python we extract RSS feeds and grab the article tittles and links.\nLastly, the content is stored in a database and fetched into the mail form and is rendered as a HTML template and the mail is sent.\n\n## Techstack\n- Python\n- Python Libraries (crispy forms, feedparser, dateutil, psycopg2, etc)\n- Django\n- PostgreSQL\n- Bootstrap + HTML + CSS\n\n\nWe have used Django for creating the webapp, PostgreSQL as the local database, Python modules and libraries for aggregating feed and sending mail.\n\n## Installation:\n\nClone the repository in your system. \n\n```\ngit clone https://github.com/Mr-Destructive/newsletter\n```\n\nPython should be installed along with pip.\nPostgreSQL is used in this application so that can be instlled from here.\n\nInstall the virtualenv package in Python\n\n```\npip install virtualenv\n```\n\nCreate a virtualenv in the current folder\n\n```\nvirtualenv venv\n```\n\nActivate the virtualenv \n\nFor Windows:\n```\nsource venv\\Scripts\\activate\n```\n\nFor Linux:\n```\nsource venv/bin/activate\n```   \n\nInstall the dependencies with pip\n\n```\npip install -r requirements.txt\n```\n\nCreate the Database in pgAdmin with a name `newsletter`\nKepp the host to default as `postgres`\nYou can keep the password as `@1234567` or change in this file [settings.py](https://github.com/Mr-Destructive/newsletter/blob/main/newsletter/settings.py)\nYour password can be hardcoded in the settings.py file -\u003e Database section -\u003e password field. \n\nTo create an account:\n- Username\n- User Email\n- Password\n- [Google App Password](https://myaccount.google.com/apppasswords) (2FA required)\n\nTo create Admin account:\n\n```\npython manage.py createsuperuser\n```\nGive in your details to be used in accessing the webapp\n\n**Make sure the venv(virtual environemnt) is activated while doing anything(running commands) in the terminal**\n\nTo run the server:\n```\npython manage.py runserver\n```\n\nYou will see the homepage with the latest posts from dev.to / medium.com / techrepublic / geeksforgeeks/ hackernoon \n\n![newsletter-app-homepage](https://res.cloudinary.com/dgpxbrwoz/image/upload/v1638449223/temp/newsletter-dj_qksz7k.png)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr-destructive%2Fnewsletter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmr-destructive%2Fnewsletter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmr-destructive%2Fnewsletter/lists"}