{"id":18785547,"url":"https://github.com/d-exclaimation/gomplifier","last_synced_at":"2025-10-03T23:05:29.055Z","repository":{"id":103062307,"uuid":"330973621","full_name":"d-exclaimation/gomplifier","owner":"d-exclaimation","description":"A bot for LINE Messaging API","archived":false,"fork":false,"pushed_at":"2021-01-31T14:02:34.000Z","size":23,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-21T09:55:54.317Z","etag":null,"topics":["bot","chat-application","chat-bot","chatbot","game","go","golang","hub","line-api","line-bot","memes","webhooks"],"latest_commit_sha":null,"homepage":"","language":"Go","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/d-exclaimation.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":"2021-01-19T12:32:37.000Z","updated_at":"2021-01-31T14:02:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"ea328c5a-3050-453f-b7ad-f2f10eb49604","html_url":"https://github.com/d-exclaimation/gomplifier","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/d-exclaimation/gomplifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-exclaimation%2Fgomplifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-exclaimation%2Fgomplifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-exclaimation%2Fgomplifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-exclaimation%2Fgomplifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d-exclaimation","download_url":"https://codeload.github.com/d-exclaimation/gomplifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d-exclaimation%2Fgomplifier/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278239978,"owners_count":25954098,"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-10-03T02:00:06.070Z","response_time":53,"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":["bot","chat-application","chat-bot","chatbot","game","go","golang","hub","line-api","line-bot","memes","webhooks"],"created_at":"2024-11-07T20:48:45.683Z","updated_at":"2025-10-03T23:05:29.038Z","avatar_url":"https://github.com/d-exclaimation.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gomplifier\n A bot for LINE Messanging API\n\n## Overview\nThis is a piece of a project I am building, the project is related to bots and servers as services.\n\nThis is the code to create a bot using LINE Messaging API SDK for Golang,\n\n## LINE API\nLINE API only require a server that can take POST Request and use the sdk to do something depending on the data given. Other than that is more to do with the developer console.\n\nI'm using the regular http library for Go that can take POST Request and parse it as a LINE Message Events\n\n```go\n// Setup HTTP Server for receiving requests from LINE platform\nhttp.HandleFunc(\"/\u003cLINE-API-Endpoints\u003e\", func(w http.ResponseWriter, req *http.Request) {\n\tvar events, err = bot.ParseRequest(req)\n\tif err != nil {\n\t\tif err == linebot.ErrInvalidSignature {\n\t\t\tw.WriteHeader(400)\n\t\t} else {\n\t\t\tw.WriteHeader(500)\n\t\t}\n\t\treturn\n\t}\n\tfor _, event := range events {\n\t\t// Only check for EventTypeMessage\n\t\tif event.Type == linebot.EventTypeMessage {\n\t\t\tswitch message := event.Message.(type) {\n\t\t\tcase *linebot.TextMessage:\n\t    // Do Something\n\t\t\t}\n\t\t}\n\t}\n})\n```\n\n## Bot functionalities\n\n### Commands:\n\u003e 1. Fortune telling with a random word generator lol `!8ball`\n\u003e 2. Making simple group todo list but without any memory `!addtodo \u003cname\u003e \u0026\u0026 !showtodo`\n\u003e 3. Play Sokoban `!start =\u003e w, a, s, d`\n\u003e 4. Make jokes hehehe `!meme, !prompt`\n\u003e 5. Upload random images as memes `!meme`\n\u003e 6. Make a fake virus downloader to prank people `!prompt \u0026\u0026 !virus`\n\u003e 7. Send message across social media (more below) `!announce \u003cmessage\u003e`\n\n```go\nfunc All() map[string]Executable {\n\tvar dict = map[string]Executable{\n\t\t\"!8ball\": Fortune,\n\t\t\"!meme\":  Memes,\n\t\t\"!prompt\": Prompt,\n\t\t\"!virus\": Virus,\n\t\t\"!addtodo\": AddTodo,\n\t\t\"!showtodo\": ShowTodo,\n\t}\n\treturn dict\n}\n```\n\n### Connecting to other bots\n\n`No info here yet, I am keeping this for myself atm sorry :)`\n\n\n### LINE Flex Message UI \nLINE Provides a way to create simple application using the Flexbox system from CSS but with their APIs. There are other ways of doing this task but Flex Messages is the most customizable one.\n\nI added some code that are UI tools (similar to something in SwiftUI or React) on top of the normal Flex Message that is provided to reduce the complexity and make them a reuseable components\n\n```go\nfunc MiniBubbleCard(hexColor string, head []FlexComponent, body []FlexComponent) *BubbleContainer {\n\treturn \u0026BubbleContainer{\n\t\tType:      FlexContainerTypeBubble,\n\t\tSize:      FlexBubbleSizeTypeNano,\n\t\tHeader:    \u0026BoxComponent{\n\t\t\tType:            FlexComponentTypeBox,\n\t\t\tLayout:          FlexBoxLayoutTypeVertical,\n\t\t\tContents:        head,\n\t\t\tBackgroundColor: hexColor,\n\t\t},\n\t\tBody:      \u0026BoxComponent{\n\t\t\tType:            FlexComponentTypeBox,\n\t\t\tLayout:          FlexBoxLayoutTypeVertical,\n\t\t\tContents:        body,\n\t\t\tSpacing:         FlexComponentSpacingTypeMd,\n\t\t},\n\t}\n}\n\n```\n\nHopefully, this part of code will live as its own libraries which I will link here:\n#### Flex UI Go Library\n[`not yet`](https://github.com/d-exclaimation/golang-linebot/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-exclaimation%2Fgomplifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd-exclaimation%2Fgomplifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd-exclaimation%2Fgomplifier/lists"}