{"id":13463738,"url":"https://github.com/RobustaStudio/bkit","last_synced_at":"2025-03-25T09:31:01.364Z","repository":{"id":94979367,"uuid":"122384585","full_name":"RobustaStudio/bkit","owner":"RobustaStudio","description":"build a messenger bot using HTML","archived":false,"fork":false,"pushed_at":"2018-03-10T10:32:28.000Z","size":1257,"stargazers_count":38,"open_issues_count":2,"forks_count":2,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-10-29T16:19:56.053Z","etag":null,"topics":["bot","bot-framework","facebook","golang","html-parser","messenger","messenger-bot","robusta"],"latest_commit_sha":null,"homepage":null,"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/RobustaStudio.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}},"created_at":"2018-02-21T19:43:43.000Z","updated_at":"2024-10-16T04:56:39.000Z","dependencies_parsed_at":"2023-04-12T11:49:15.516Z","dependency_job_id":null,"html_url":"https://github.com/RobustaStudio/bkit","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobustaStudio%2Fbkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobustaStudio%2Fbkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobustaStudio%2Fbkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RobustaStudio%2Fbkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RobustaStudio","download_url":"https://codeload.github.com/RobustaStudio/bkit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245435076,"owners_count":20614823,"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":["bot","bot-framework","facebook","golang","html-parser","messenger","messenger-bot","robusta"],"created_at":"2024-07-31T14:00:27.734Z","updated_at":"2025-03-25T09:31:00.916Z","avatar_url":"https://github.com/RobustaStudio.png","language":"Go","funding_links":[],"categories":["Projects"],"sub_categories":["Chatbot Frameworks"],"readme":"BKIT\n====\n\u003e An advanced tiny bots scripting engine using the power of XML/HTML.\n\nFeatures\n====\n- Portable \u0026 Tiny\n- Embedded a tiny `Expression Engine` to support simple scripting\n- Supports the following tags `meta, text, label, p, line, span, embed, resource, media, div, menu, nav, dialog, form, template`\n- Supports custom replies from custom templates\n- Automatically paginate long `Menus` to be compatible with messenger `max-items-limit`\n\nStatus\n====\n\u003e `BKIT` is in its first release, we wanted to keep it as simple as possible, we are planning to add more features in the future\n\nTags\n===\n- Configs: `\u003cmeta /\u003e`\n- Text: `\u003ctext\u003e\u003c/text\u003e`, `\u003clabel\u003e\u003c/label\u003e`, `\u003cspan\u003e\u003c/span\u003e`, `\u003cp\u003e\u003c/p\u003e`, `\u003cline\u003e\u003c/line\u003e`, `\u003cinline\u003e\u003c/inline\u003e`\n- Media: `\u003cmedia src=\"\" type=\"\" /\u003e`, `\u003cresource src=\"\" type=\"\" /\u003e`, `\u003cembed type=\"\" src=\"\" /\u003e`\n- Menu: `\u003cmenu\u003e\u003c/menu\u003e`, `\u003cnav\u003e\u003c/nav\u003e`\n- Form: `\u003cform\u003e\u003c/form\u003e`, `\u003cdialog\u003e\u003c/dialog\u003e`\n- Template: `\u003ctemplate\u003e\u003c/template\u003e`\n\nDemo\n=====\n\u003e a very simple messenger bot that will collects the user info\n```html\n\u003chtml\u003e\n\t\u003chead\u003e\n        \u003c!-- here we define the main-menu element, `main` is the id of the main menu --\u003e\n        \u003cmeta name=\"main-menu\" content=\"main\" /\u003e\n\n\t    \u003c!-- here we define the welcome menu \"after pressing get started button\" --\u003e\n\t\t\u003cmeta name=\"welcome-menu\" content=\"welcome\" /\u003e\n\n        \u003c!-- whether the bkit server should verify the incoming request \"from messenger itself\" or not --\u003e\n        \u003cmeta name=\"messenger-verify\" content=\"true\" /\u003e\n\n        \u003c!-- set the facebook app secret --\u003e\n        \u003cmeta name=\"messenger-app-secret\" content=\"***************************\" /\u003e\n\n        \u003c!-- the verify token in the bot settings in facebook messenger platform --\u003e\n        \u003cmeta name=\"messenger-verify-token\" content=\"*************\" /\u003e\n\n        \u003c!-- the facebook page token --\u003e\n\t\t\u003cmeta name=\"messenger-page-token\" content=\"****************\" /\u003e\n\n        \u003c!-- this content will be displayed when a new user opens the messenger window --\u003e\n        \u003cmeta name=\"description\" content=\"Hi, I'm your bot\"/\u003e\n\t\u003c/head\u003e\n\t\u003cbody\u003e\n        \u003cmenu id=\"main\" title=\"Under your command, Sir :)\"\u003e\n            \u003c!-- reset means \"clear the current session if there were some old previous data\" --\u003e\n\t\t\t\u003ca href=\"#about\" reset=\"true\"\u003eAbout\u003c/a\u003e\n\t\t\t\u003ca href=\"#collect\" reset=\"true\"\u003eCollect Data\u003c/a\u003e\n        \u003c/menu\u003e\n\n        \u003cmenu id=\"welcome\"\u003e\n            \u003ca href=\"#about\"\u003eClick Here 1\u003c/a\u003e\n            \u003ca href=\"#about\"\u003eClick Here 2\u003c/a\u003e\n        \u003c/menu\u003e\n\n        \u003cdiv id=\"about\"\u003e\n            \u003ctext\u003eI'm bkit, the bots-kit engine\u003c/text\u003e\n            \u003ctext\u003e;)\u003c/text\u003e\n        \u003c/div\u003e\n\n        \u003cform id=\"collect\" action=\"http://some/backend\"\u003e\n            \u003ctext\u003eenter your name\u003c/text\u003e\n            \u003cinput name=\"user_name\" /\u003e\n\n            \u003ctext\u003e'Hi ' + user_name + ' ;)'\u003c/text\u003e\n            \u003ctext\u003eSelect a type ...\u003c/text\u003e\n            \u003cselect name=\"type\"\u003e\n                \u003coption value=\"a\"\u003eType 1\u003c/option\u003e\n                \u003coption value=\"b\"\u003eType 2\u003c/option\u003e\n            \u003c/select\u003e\n            \u003ctext if=\"type == 'a'\"\u003eYou selected Type 1\u003c/text\u003e\n            \u003ctext if=\"type == 'b'\"\u003eYou selected Type 2\u003c/text\u003e\n            \u003ctext\u003eThank You!\u003c/text\u003e\n        \u003c/form\u003e\n    \u003c/body\u003e\n\u003c/html\u003e\n```\n\u003e save that file as `demo.html`\n\u003e then just run `bkit -html \"demo.html\" -https \":443\" -http \":80\" -server-name \"bkit.domain.com\"`\n\u003e Point your facebook messenger webhook to `https://bkit.domain.com/messenger`\n\nInstallation\n===============\n- Binaries ? go to [Releases Page](releases) and select your own distro/arch.\n- Docker ? `docker run -v $(pwd)/demo.html:/demo.html --network host alash3al/bkit -html /demo.html -https \":443\" -http \":80\" -server-name \"bkit.domain.com\"`\n- From Source ? `go get github.com/RobustaStudio/bkit`\n\nCredits\n==============\nCopyright 2018 (c) [Robustastudio](https://robustastudio.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRobustaStudio%2Fbkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FRobustaStudio%2Fbkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRobustaStudio%2Fbkit/lists"}