{"id":16076043,"url":"https://github.com/zewdu444/blog_app","last_synced_at":"2026-04-28T08:03:12.129Z","repository":{"id":160473239,"uuid":"635233792","full_name":"zewdu444/blog_app","owner":"zewdu444","description":" A fully functional website that will show the list of posts and empower readers to interact with them by adding comments and liking posts.","archived":false,"fork":false,"pushed_at":"2023-05-19T09:30:12.000Z","size":137,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-04-05T10:42:35.181Z","etag":null,"topics":["orm","postgresql","ror","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/zewdu444.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":"2023-05-02T08:56:53.000Z","updated_at":"2025-02-22T09:53:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"bd0aeff4-f7d8-41cf-bc9e-d2b1e813ece1","html_url":"https://github.com/zewdu444/blog_app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zewdu444/blog_app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zewdu444%2Fblog_app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zewdu444%2Fblog_app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zewdu444%2Fblog_app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zewdu444%2Fblog_app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zewdu444","download_url":"https://codeload.github.com/zewdu444/blog_app/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zewdu444%2Fblog_app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32371673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"online","status_checked_at":"2026-04-28T02:00:07.250Z","response_time":56,"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":["orm","postgresql","ror","ruby"],"created_at":"2024-10-09T09:24:06.112Z","updated_at":"2026-04-28T08:03:12.096Z","avatar_url":"https://github.com/zewdu444.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n# 📗 Table of Contents\n\n- [📖 About the Project](#about-project)\n  - [🛠 Built With](#built-with)\n    - [Tech Stack](#tech-stack)\n    - [Key Features](#key-features)\n- [💻 Getting Started](#getting-started)\n  - [Setup](#setup)\n  - [Prerequisites](#prerequisites)\n  - [Usage](#usage)\n- [👥 Authors](#authors)\n- [🔭 Future Features](#future-features)\n- [🤝 Contributing](#contributing)\n- [⭐️ Show your support](#support)\n- [🙏 Acknowledgements](#acknowledgements)\n\n- [📝 License](#license)\n\n# 📰 Blog App \u003ca name=\"about-project\"\u003e\u003c/a\u003e\n\n\u003e A fully functional website that will show the list of posts and empower readers to interact with them by adding comments and liking posts.\n\n## 🛠 Built With \u003ca name=\"built-with\"\u003e\u003c/a\u003e\n\n### Tech Stack \u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\n- \u003ca href=\"https://www.ruby-lang.org/es/\"\u003eROR\u003c/a\u003e\n- \u003ca href=\"https://www.postgresql.org/\"\u003ePostgresql\u003c/a\u003e\n\n### Key Features \u003ca name=\"key-features\"\u003e\u003c/a\u003e\n\n- ORM model\n- User, Comment, Post, and like model\n- Custom methods in each classes\n- Add validation for user and post\n- Test cases for each model\n- Add views, controllers, and routes for each model\n- Test cases for each controller\n- Add views for user and posts\n- Add forms for posts, comments, and likes\n- Add integtation test and fix n+1 problems\n- Add authentication using devise gem\n- Add authorization using cancancan gem\n- Add API endpoint\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 💻 Getting Started \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\nTo get a local copy up and running, follow these steps.\n\n### Prerequisites\n\nIn order to run this project you need:\n\n- Command line or terminal\n- IDE such as VsCode.\n- Rails needs to be installed on your system.\n\n### Setup\n\nClone this repository to your desired folder:\nExample command:\n\n```sh\n  git clone https://github.com/zewdu444/blog_app.git\n  cd blog_app\n\n```\n\n### Install\n\nExample command:\n\n```sh\n  cd blog_app\n  bundle install (install all dependencies)\n\n```\n\n### Usage\n\nTo run the project redirecting to the root directory of the project and run the following command:\n\n```sh\n bin/rails server (to run web application)\n\n```\n\n### Test\n\nTo test the web app run the following command:\n\n```sh\n rspec spec ( to test the web application)\n\n```\n\n## 👥 Authors \u003ca name=\"authors\"\u003e\u003c/a\u003e\n\n👤 **Zewdu Erkyhun**\n\n- GitHub: [@zewdu444](https://github.com/zewdu444)\n- Twitter: [@zewdu444](https://twitter.com/zewdu444)\n- LinkedIn: [zewdu-anley](https://www.linkedin.com/in/zewdu-anley/)\n\n👤 **Marko Kermichiev**\n\n- GitHub: [MarkoKermi](https://github.com/MarkoKermi)\n- Twitter: [@MarkoKerm](https://twitter.com/MarkoKerm)\n- LinkedIn: [marko-kermichiev](https://www.linkedin.com/in/marko-kermichiev/)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🔭 Future Features \u003ca name=\"future-features\"\u003e\u003c/a\u003e\n\n- [add API documentation]\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🤝 Contributing \u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](https://github.com/zewdu444/blog_app/issues).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## ⭐️ Show your support \u003ca name=\"support\"\u003e\u003c/a\u003e\n\nGive a ⭐️ if you like this project!\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🙏 Acknowledgments \u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e\n\nwe would like to thank microverse community for the support and guidance.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 📝 License \u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is [MIT](./LICENSE) licensed.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzewdu444%2Fblog_app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzewdu444%2Fblog_app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzewdu444%2Fblog_app/lists"}