{"id":26522519,"url":"https://github.com/pranjalco/flask-blog-project","last_synced_at":"2026-04-13T10:31:48.159Z","repository":{"id":282893748,"uuid":"949995700","full_name":"pranjalco/flask-blog-project","owner":"pranjalco","description":"This Flask blog app lets users register, log in, and create posts. It includes Home, About, and Contact pages, with email contact support. The database manages users, posts, and comments, with only the admin having full CRUD access. All users can comment, and flash messages handle errors.","archived":false,"fork":false,"pushed_at":"2025-03-17T14:03:28.000Z","size":3883,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-17T14:42:46.189Z","etag":null,"topics":["api-integration","backend-development","bootstrap","database-management","flask","flask-application","programming","python","sqlalchemy","web-development","wtforms"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pranjalco.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-03-17T13:19:01.000Z","updated_at":"2025-03-17T14:03:31.000Z","dependencies_parsed_at":"2025-03-18T21:48:32.079Z","dependency_job_id":null,"html_url":"https://github.com/pranjalco/flask-blog-project","commit_stats":null,"previous_names":["pranjalco/flask-blog-project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pranjalco/flask-blog-project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranjalco%2Fflask-blog-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranjalco%2Fflask-blog-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranjalco%2Fflask-blog-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranjalco%2Fflask-blog-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pranjalco","download_url":"https://codeload.github.com/pranjalco/flask-blog-project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranjalco%2Fflask-blog-project/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31748966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T09:16:15.125Z","status":"ssl_error","status_checked_at":"2026-04-13T09:16:05.023Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["api-integration","backend-development","bootstrap","database-management","flask","flask-application","programming","python","sqlalchemy","web-development","wtforms"],"created_at":"2025-03-21T13:36:15.111Z","updated_at":"2026-04-13T10:31:48.140Z","avatar_url":"https://github.com/pranjalco.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blog Project Advanced\nThis **Flask blog application** allows users to register, log in, and create blog posts. It includes **Home, About, and Contact pages**, where users can contact the blogger via email. The project uses a database with **User, BlogPost, and Comment tables**, establishing necessary relationships. Only the **first registered user (admin)** can perform CRUD operations on blog posts. All users can **comment on posts**, and flash messages provide feedback on errors like incorrect login details.  \n\n## Video\n[![Video Demo](./screenshots/thumbnail.PNG)](https://youtu.be/Z6DqWVMgK14)\n\n## Author\nPranjal Sarnaik\n\n## Features\n- **User Authentication**: Register, log in, and log out securely.  \n- **Admin Controls**: Only the first registered user can add, edit, or delete blog posts.  \n- **Commenting System**: Users can comment on blog posts.  \n- **Email Contact Form**: Users can send messages to the blogger.  \n- **Flash Messages**: Displays validation errors and login feedback.  \n\n## Level\nAdvanced\n\n## Tech Stack\nFlask | SQLAlchemy | Flask-Login | Flask-Bootstrap | Flask-CKEditor | Flask-Gravatar | WTForms | SQLite | Web Development | Python\n\n## How to Run\n1. Clone the repo:  \n   ```bash  \n   git clone https://github.com/pranjalco/flask-blog-project.git\n\n2. Install dependencies and run: \n    ```bash\n   pip install -r requirements.txt\n   pip install -r requirements_3.12.txt\n   python main.py\n   ```\n**Created by Pranjal Sarnaik**  \n*Released under the MIT License*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranjalco%2Fflask-blog-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpranjalco%2Fflask-blog-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranjalco%2Fflask-blog-project/lists"}