{"id":22335148,"url":"https://github.com/finalgoal231/finalgoal","last_synced_at":"2025-05-09T02:35:39.146Z","repository":{"id":244787369,"uuid":"812817434","full_name":"Finalgoal231/finalGoal","owner":"Finalgoal231","description":"This is about article management system","archived":false,"fork":false,"pushed_at":"2024-12-14T22:21:43.000Z","size":7696,"stargazers_count":25,"open_issues_count":8,"forks_count":39,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-26T05:11:12.652Z","etag":null,"topics":["antd","expressjs","mongodb","nodejs","react","react-router"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/Finalgoal231.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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-06-10T00:15:19.000Z","updated_at":"2024-12-04T16:36:33.000Z","dependencies_parsed_at":"2024-06-17T13:13:51.790Z","dependency_job_id":"17f6785d-831e-453c-a7f3-441a8609fde9","html_url":"https://github.com/Finalgoal231/finalGoal","commit_stats":null,"previous_names":["shinevue/finalgoal"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Finalgoal231%2FfinalGoal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Finalgoal231%2FfinalGoal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Finalgoal231%2FfinalGoal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Finalgoal231%2FfinalGoal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Finalgoal231","download_url":"https://codeload.github.com/Finalgoal231/finalGoal/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238053508,"owners_count":19408702,"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","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":["antd","expressjs","mongodb","nodejs","react","react-router"],"created_at":"2024-12-04T05:11:57.854Z","updated_at":"2025-02-10T04:00:27.520Z","avatar_url":"https://github.com/Finalgoal231.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blog Website Project\n\n## Overall Requirements\n\n- There are three user roles. Admin, managers, users. And also there are guests who are not logged in.\n- Admin can manage everything – users, articles and categories.\n- Managers can only manage articles.\n- Admin, managers can do whatever user does.\n- Guest can view only few articles.\n- All users can view articles\n- There should be CRUD APIs for all.\n- /articles/home API should return articles for the categories and users they have followed, for guest users, they should return latest 5 articles. If user doesn’t have any follows, it should return latest 5 articles.\n- GET /articles API should support sort by latest, number of comments, and number of favorites, search by title.\n\n## User\n\n- User has a username, name, bio, profile photo. Username should be unique. It should only contain English lowercase letters, numbers, underscore.\n- Create a separate endpoint for uploading profile photo.\n- On register page, user has to provide username, name and password. Profile photo optional.\n- On profile page, user can update name, bio, profile photo.\n- In change password page, they can change their password.\n- Users can post new articles\n- Users can follow categories, or they can also follow other users.\n- User should be able to see his followers.\n\n## Categories\n\n- Admin can create category. Category doesn’t have a tree structure.\n- Category has only a title.\n\n## Article\n\n- Article has title, category, a list of tags, content\n- Users can create a new blog and publish immediately, or they can mark them as draft and publish later.\n\n## Comment\n\n- User can comment on an article.\n\n## Favorite\n\n- User can like an article.\n\n## Notification\n\n- When a user favorite an article, the author of the article should get a notification. The notification should look like this. “Smith liked your article – title of article”\n- When a user comment on an article, the author of the article should get notification “Smith commented on your article.”\n- When someone write comment and mention some user, the user should get notification as well. “Smith mentioned you on his comment”\n- When a user log in, he should be able to see the notifications.\n- When the user click on specific notification, it should redirect to the article page.\n\n## Delete Article, Category, User all should be done with soft delete\n\n## How to run this project?\n\n- Clone Repository\n  \n      git clone https://github.com/Finalgoal231/finalGoal.git\n      cd finalgoal\n\n- Install node_modules\n\n      npm install\n  \n- Run frontend and backend concurrently\n\n      npm run dev\n\n\n## Contributor\n\n\n#### [Shine](https://github.com/shinevue)\n#### [Truestar](https://github.com/Luis96920)\n#### [Yonex](https://github.com/mcyandex)\n#### [Luckystar](https://github.com/techietrend)\n#### [Achilles](https://github.com/oleh1010)\n#### [Chivalrousdev](https://github.com/chivalrousdev)\n#### [CreativeMan](https://github.com/creative2113)\n#### [Virus](https://github.com/gitMan-stack)\n#### [Baymax](https://github.com/techietrend)\n#### [Popstar](https://github.com/popstar7)\n#### [BlackGhost](https://github.com/blackghost2693)\n#### [Sasaki](https://github.com/Johnhvy)\n#### [Grassman](https://github.com/grasshousedev)\n#### [Storm](https://github.com/felipedev418)\n#### [Shiny7star](https://github.com/shiny7star)\n#### [Silver](https://github.com/silvershiny)\n#### [Sweem](https://github.com/BeautifulMoon211) \n#### [Ignacio](https://github.com/ignacioshine) \n#### [Gold Sunshine](https://github.com/goldsunshines)\n#### [DragonSea](https://github.com/dragonsea0927) \n#### [dragonblue](https://github.com/dragon927AAA)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinalgoal231%2Ffinalgoal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffinalgoal231%2Ffinalgoal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinalgoal231%2Ffinalgoal/lists"}