{"id":25388085,"url":"https://github.com/vishwajeetk5/blogify","last_synced_at":"2026-04-13T04:04:03.608Z","repository":{"id":220855110,"uuid":"752769224","full_name":"vishwajeetk5/Blogify","owner":"vishwajeetk5","description":"Blogify is a dynamic blog application built with Node.js, Express.js, MongoDB, and EJS. Includes Bootstrap styling and features for Creating, updating, viewing and deleting posts","archived":false,"fork":false,"pushed_at":"2024-08-20T18:21:48.000Z","size":1450,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-02T08:17:28.800Z","etag":null,"topics":["axios","blog","blogify","body-parser","crud","custom-api","ejs-express","expressjs","mongodb","nodejs","rest-api"],"latest_commit_sha":null,"homepage":"","language":"EJS","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/vishwajeetk5.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-04T18:51:46.000Z","updated_at":"2024-08-20T18:21:52.000Z","dependencies_parsed_at":"2024-03-25T20:25:51.000Z","dependency_job_id":"b016628d-5679-48b3-905e-62167241793c","html_url":"https://github.com/vishwajeetk5/Blogify","commit_stats":null,"previous_names":["vishwajeetk5/blog-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vishwajeetk5/Blogify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetk5%2FBlogify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetk5%2FBlogify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetk5%2FBlogify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetk5%2FBlogify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vishwajeetk5","download_url":"https://codeload.github.com/vishwajeetk5/Blogify/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetk5%2FBlogify/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277103489,"owners_count":25761398,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-26T02:00:09.010Z","response_time":78,"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":["axios","blog","blogify","body-parser","crud","custom-api","ejs-express","expressjs","mongodb","nodejs","rest-api"],"created_at":"2025-02-15T12:37:18.540Z","updated_at":"2025-09-26T15:55:07.979Z","avatar_url":"https://github.com/vishwajeetk5.png","language":"EJS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blogify!\n\nBlogify is a dynamic blog application built with Node.js, Express.js, MongoDB, and EJS.The user can publish,read, edit,delete posts, and search with keywords.\n\n- Node.js serves as the runtime environment, handling server-side logic and routing,\n- Express.js acts as a web application framework, simplifying route definition and request handling. \n- MongoDB as the DBMS.\n- EJS (Embedded JavaScript) serves as the templating engine.\n- Additionally, Bootstrap is utilized for frontend design, providing pre-designed CSS and JavaScript components for a visually appealing and user-friendly interface\n\n## Tech Stack\n\n**Client:** Reactjs,Bootstrap\n\n**Server:** Node.js, Express.js,RESTful API\n\n**Data Management:** MongoDB\n\n**Dependency:** Axios: Promise-based HTTP client for the browser and Node.js\nMongoose:Object Data Modeling (ODM) library for MongoDB and Node.js,provides abstraction over MongoDB's native driver\n\n## Database Configuration\n\n1.**Ensure MongoDB is Running**: Before executing any MongoDB commands, ensure that MongoDB is running on your local machine or server. Start MongoDB:\n   `mongod`\n   \n2.**Connect to MongoDB**: `mongo`\n\n3.**Create a Database**: `use mydb`\n\n4.**Create Collection**: `db.createCollection('blog')`\n\n## Run Locally\n\n1. Clone the project: \n```bash\n  git clone https://github.com/vishwajeetk5/Blogify.git\n```\n2. Go to the project directory: `cd Blogify`\n3. Install dependencies:        `npm install`\n5. Start the custom API server: `node api.js`\n6. Then start Backend server:   `node index.js`\n7. Access the application at:   `http://localhost:3000`\n\n## Screenshots\nHome Page with recent posts\n![image](https://github.com/vishwajeetk5/Blogify/assets/119106702/527af77f-5007-4e8e-bdad-7086959d1355)\nNew Post page\n![image](https://github.com/vishwajeetk5/Blogify/assets/119106702/d63b2d5b-2653-4df7-9aa5-21f9eba8c6d4)\nEdit Post page\n![image](https://github.com/vishwajeetk5/Blogify/assets/119106702/3a108d5c-bca1-4180-b72e-fd0c5eaf4dcd)\nSearch and highlight through keyword\n![image](https://github.com/vishwajeetk5/Blogify/assets/119106702/4041bc7a-b086-418f-8207-0f02b9837ba3)\n\n\n## Concepts Learned\n\n- Building a RESTful API\n- CRUD operations for blog posts using API and MongoDB with mongoose abstraction\n- MongoDB installation and commands\n- Using Postman for API testing\n- Server-side templating with EJS\n- Frontend-backend integration\n- [Background Blob animation using Illustrator,SVG](https://dev.to/uuuuuulala/making-background-blob-animation-in-just-15kb-step-by-step-guide-2482)\n\n## Mistakes Made\n- HTML Never HTML forms do not support methods other than 'GET' and 'POST'\n\n![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge\u0026logo=node.js\u0026logoColor=white)\n![NPM](https://img.shields.io/badge/NPM-%23CB3837.svg?style=for-the-badge\u0026logo=npm\u0026logoColor=white)\n![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=for-the-badge\u0026logo=express\u0026logoColor=%2361DAFB)\n![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge\u0026logo=mongodb\u0026logoColor=white)\n![Bootstrap](https://img.shields.io/badge/bootstrap-%238511FA.svg?style=for-the-badge\u0026logo=bootstrap\u0026logoColor=white)\n![ChatGPT](https://img.shields.io/badge/chatGPT-74aa9c?style=for-the-badge\u0026logo=openai\u0026logoColor=white)\n\n\u003cimg src=\"https://t.bkit.co/w_66c03e44a8b26.gif\" /\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwajeetk5%2Fblogify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvishwajeetk5%2Fblogify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwajeetk5%2Fblogify/lists"}