{"id":16739375,"url":"https://github.com/zafarali/minerva-bot","last_synced_at":"2025-03-21T22:31:32.347Z","repository":{"id":78568204,"uuid":"56780162","full_name":"zafarali/minerva-bot","owner":"zafarali","description":"Your personal assistant for everything McGill.","archived":false,"fork":false,"pushed_at":"2017-03-28T00:04:26.000Z","size":659,"stargazers_count":40,"open_issues_count":5,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-18T05:34:56.783Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://m.me/minervabot","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/zafarali.png","metadata":{"files":{"readme":"README.md","changelog":"history.json","contributing":null,"funding":null,"license":"License.md","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":"2016-04-21T14:24:53.000Z","updated_at":"2025-02-05T18:47:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"c3fbf41e-832b-49c9-910e-be26adde7f55","html_url":"https://github.com/zafarali/minerva-bot","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/zafarali%2Fminerva-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zafarali%2Fminerva-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zafarali%2Fminerva-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zafarali%2Fminerva-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zafarali","download_url":"https://codeload.github.com/zafarali/minerva-bot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244880187,"owners_count":20525505,"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":[],"created_at":"2024-10-13T00:50:38.211Z","updated_at":"2025-03-21T22:31:32.334Z","avatar_url":"https://github.com/zafarali.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Minerva Bot\n\n\u003cimg width=\"435\" alt=\"screen shot 2016-05-24 at 9 58 14 pm\" src=\"https://cloud.githubusercontent.com/assets/6295292/15525801/ec37add4-21fa-11e6-9e85-cd8f2d4b16d4.png\"\u003e\n\nYour personal assistant for everything McGill. Learn about courses, programs, buildings, cafeteria and library opening hours, uPrint locations and general FAQs.\n\n## Idea\n\nCurrently it takes 10 clicks to get to a search box that lets you search McGill courses. Minerva Bot lives in your messenger, one click away, to search everything McGill!\n\n## Features\n\n### Course Look Up\n\n#### Specific Queries\n- Ask for courses by code \"COMP 202\", \"Where is PHYS 232 in the Fall\"\n- Ask for courses by title \"Courses about machine learning in the fall\", \"Courses about quantum mechanics\"\n \n\n\u003cimg width=\"435\" src=\"https://cloud.githubusercontent.com/assets/6295292/15525873/85069e08-21fb-11e6-8cb7-3c8605515ecc.jpg\" /\u003e\n![image](https://cloud.githubusercontent.com/assets/6295292/15525886/a9430c70-21fb-11e6-88e4-0f31e50c8560.png)\n\n\n\nYou will get a response with times, professors, buildings and sections!\n\n#### Freeform Queries\n- Ask for courses by level: \"500 level biology courses\"\n- Ask for programs: \"Honours physics\", \"Culturual Studies Major\"\n\n\u003cimg width=\"435\" src=\"https://cloud.githubusercontent.com/assets/6295292/15525936/0a10626e-21fc-11e6-861b-bd14ad2baf93.jpg\"/\u003e\n![image](https://cloud.githubusercontent.com/assets/6295292/15525971/549e4e54-21fc-11e6-82a9-8df1418821d1.png)\n\n\n\n### Building Look up\n- Look for buildings on campus: \"Where is the E-cafe?\", \"Show me frostbite\"\n- See where your classes are.\n- Look for uPrint printers on campus.\n \n![image](https://cloud.githubusercontent.com/assets/6295292/15525851/5377b76e-21fb-11e6-90bf-cdbf0fb972a1.png)\n![image](https://cloud.githubusercontent.com/assets/6295292/15525865/6d9b68a2-21fb-11e6-99e4-5c099175bef8.png)\n\u003cimg width=\"435\" src=\"https://cloud.githubusercontent.com/assets/6295292/15526051/f478ae7e-21fc-11e6-855f-508c8a436242.jpg\"/\u003e\n\n\n\n## Tech\n\nMinerva Bot is organized into *plugins*. When the server receives a message or postback, the query along with context and history is passed along to a chain of plugins (which are promises) that will process the data in the context. Each plugin will save *replies* into the context which will be sent back to the user. \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzafarali%2Fminerva-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzafarali%2Fminerva-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzafarali%2Fminerva-bot/lists"}