{"id":17937742,"url":"https://github.com/thanhpp/zola","last_synced_at":"2026-01-20T00:41:39.343Z","repository":{"id":44816005,"uuid":"413129293","full_name":"thanhpp/zola","owner":"thanhpp","description":"Server-side of a social network ","archived":false,"fork":false,"pushed_at":"2022-01-23T08:01:21.000Z","size":12790,"stargazers_count":2,"open_issues_count":5,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-14T05:44:16.986Z","etag":null,"topics":["golang","javascript","websocket"],"latest_commit_sha":null,"homepage":"","language":"Go","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/thanhpp.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-10-03T16:14:19.000Z","updated_at":"2022-09-22T09:20:12.000Z","dependencies_parsed_at":"2022-08-25T12:10:49.092Z","dependency_job_id":null,"html_url":"https://github.com/thanhpp/zola","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanhpp%2Fzola","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanhpp%2Fzola/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanhpp%2Fzola/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thanhpp%2Fzola/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thanhpp","download_url":"https://codeload.github.com/thanhpp/zola/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247809941,"owners_count":20999811,"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":["golang","javascript","websocket"],"created_at":"2024-10-28T23:07:18.558Z","updated_at":"2026-01-20T00:41:39.309Z","avatar_url":"https://github.com/thanhpp.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Zola ~= Zalo\n\n- [Zola ~= Zalo](#zola--zalo)\n  - [Documents](#documents)\n    - [Requirements](#requirements)\n    - [Database](#database)\n    - [Services](#services)\n    - [Relations](#relations)\n    - [APIs](#apis)\n      - [User](#user)\n      - [Post](#post)\n      - [Chat](#chat)\n      - [More APIs](#more-apis)\n      - [Admin APIs](#admin-apis)\n\n## Documents\n\n### Requirements\n- [GOOGLE DRIVE](https://drive.google.com/drive/folders/1ii_FZnXnlrzpcdi5AwqHDAD82lV-0S8T?usp=sharing)\n- Timestamp: Seconds from 01/01/1970 (Unix)\n### Database\n![Diagram](docs/Zola.png)\n\n### Services\n1. Lạc Long Quân - Manage users, posts\n   1. [Postman](docs/Zola.postman_collection.json)\n2. Âu Cơ - Manage chats, messages,...\n\n### Relations\n- Users can only **block diary** from each other if they were a friend\n- **Block message** means block everything, including\n  - Remove the friend relationship\n  - Remove all likes, comments\n- Only friends can see each other posts, comments, likes\n\n### APIs\n#### User\n- [x] [signup](https://github.com/thanhpp/zola/commit/1a1bef3d247af842f8c1a16e8a4abea2c158e953)\n- [x] [login](https://github.com/thanhpp/zola/issues/1)\n- [x] [logout](https://github.com/thanhpp/zola/issues/3)\n- [x] [set_request_friend](https://github.com/thanhpp/zola/issues/21)\n- [x] [get_requested_friend](https://github.com/thanhpp/zola/issues/63)\n- [x] [set_accept_friend](https://github.com/thanhpp/zola/issues/21)\n- [x] [get_user_friends](https://github.com/thanhpp/zola/issues/65)\n- [x] [change_password](https://github.com/thanhpp/zola/issues/26)\n- [x] [set_block_user](https://github.com/thanhpp/zola/issues/19)\n- [x] [set_block_diary](https://github.com/thanhpp/zola/issues/67)\n- [x] [set_user_info](https://github.com/thanhpp/zola/issues/58)\n  - [x] [update info](https://github.com/thanhpp/zola/issues/58)\n  - [x] [response](https://github.com/thanhpp/zola/issues/60)\n- [x] [get_user_info](https://github.com/thanhpp/zola/issues/55)\n- [x] [set_user_online](https://github.com/thanhpp/zola/issues/73)\n\n#### Post\n- [x] [add_post](https://github.com/thanhpp/zola/issues/5)\n- [x] get_post\n  - [x] [Get post data](https://github.com/thanhpp/zola/issues/41)\n  - [x] [video thumbnails](https://github.com/thanhpp/zola/issues/42)\n- [x] [get_list_posts](https://github.com/thanhpp/zola/issues/85)\n  - ![](docs/get_list_post.png)\n- [ ] check_new_item\n- [x] [edit_post](https://github.com/thanhpp/zola/issues/7)\n  - [ ] missing images order\n- [x] [delete_post](https://github.com/thanhpp/zola/issues/17)\n- [x] [report](https://github.com/thanhpp/zola/issues/10)\n- [x] [set_comment](https://github.com/thanhpp/zola/issues/28)\n  - [x] [Create comment](https://github.com/thanhpp/zola/issues/28)\n  - [x] [Get comment](https://github.com/thanhpp/zola/issues/83)\n- [x] [get_comment](https://github.com/thanhpp/zola/issues/81)\n- [x] [like](https://github.com/thanhpp/zola/issues/15)\n- [x] [edit_comment](https://github.com/thanhpp/zola/issues/30)\n- [x] [del_comment](https://github.com/thanhpp/zola/issues/31)\n- [x] [search](https://github.com/thanhpp/zola/issues/102)\n\n#### Chat\n- [x] [get_conversation](https://github.com/thanhpp/zola/issues/94)\n- [x] [delete_message](https://github.com/thanhpp/zola/issues/94)\n- [x] [get_list_conversation](https://github.com/thanhpp/zola/issues/94)\n- [x] [delete_conversation](https://github.com/thanhpp/zola/issues/94)\n- TODO (data whatever)\n  - [x] Tạo connection || ws://localhost:12000/ws ||\n  - [x] Join room\n    - ```go\n      type WsMessage struct {\n        MsgID      string `json:\"message_id\"` // null\n        Event      string `json:\"event\"`      // joinroom\n        SenderID   string `json:\"sender\"`     // user-id\n        ReceiverID string `json:\"receiver\"`   // receiver-id\n        Created    string `json:\"created\"`    // time.Now.UnixMili()\n        Content    string `json:\"content\"`    // null\n      }\n      ```\n  - [x] send message\n    - ```go\n      type WsMessage struct {\n        MsgID      string `json:\"message_id\"` // null\n        Event      string `json:\"event\"`      // send\n        SenderID   string `json:\"sender\"`     // user-id\n        ReceiverID string `json:\"receiver\"`   // receiver-id\n        Created    string `json:\"created\"`    // time.Now.UnixMili()\n        Content    string `json:\"content\"`    // content\n      }\n      ```\n\n#### More APIs\n- [ ] set_official_account\n- [ ] check_verify_code\n- [ ] del_saved_search\n- [ ] get_list_suggested_friends\n- [ ] get_verify_code\n- [ ] get_saved_search\n\n#### Admin APIs\n- [ ] get_admin_permission\n- [x] [get_user_list](https://github.com/thanhpp/zola/issues/69)\n- [ ] set_role\n- [ ] get_analyst_result\n- [x] [set_user_state, delete_user](https://github.com/thanhpp/zola/issues/87)\n- [ ] get_user_basic_info\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthanhpp%2Fzola","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthanhpp%2Fzola","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthanhpp%2Fzola/lists"}