uiowa-cs-5800-0001-fall-2018 / blocklybot

http://blockbot.io
0 stars 1 forks source link

BlockBot.io

A web application for building chat bots.

Meeting Minutes

Project team meeting minutes can be found here.

Project Structure

This project is an ASP.NET Core MVC web application hosted on AWS Elastic Beanstalk. When a user sets up an integration and creates a project, specific code for interacting with that integration is created as an AWS Lambda function. A diagram of how the application works is here. Below is a description of each part of this project.

First Time Install Instructions

This project assumes the developer is working on a Windows operating system, and ideally that the developer is working on Windows 10 or later.

  1. Ensure you have the following software installed:
  2. Clone this repo to your local machine
  3. Navigate to BlockBot.Web/closure-library and run npm install
  4. Navigate to BlockBot.Web/google-blockly/ and run npm install
  5. Open FundamentalsChatbot.sln in Visual Studio
  6. Configure the application's database:
    • Open the Package Manager Console: Tools > NuGet Package Manager > Package Manager Console
    • To delete an existing version of the database, run the drop-database command.
    • To creates a new, empty version of the database with the appropriate schema, run the update-database command.
  7. Ensure the BlockBot.Web project is the startup project:
    • In the solution explorer, the current startup project has a bold project name
    • To set a project as the startup project, right-click the project in the solution explorer and select Set as StartUp Project
  8. To start the project, click the green play icon in the top middle of the Visual Studio window. The first time this is done, Visual Studio will likely spend several minutes copying files and building the solution.
  9. A browser should open and the site will open in a tab. This project uses HTTPS by default, so security errors may occur if your browser doesn't trust the certificate used for local development. Follow the appropriate steps for your browser to trust this certificate and visit the web page.

Making Changes to this Project

This project does not allow people to push code to the develop or master branches. Instead, changes should be made by getting the latest version of develop, branching off of develop to a separate branch, making changes on the separate branch, and pushing the separate branch to this repository. Then, pull requests should be made to merge those changes into develop. Changes are merged from develop to master during software releases.

Additional Resources

All additional documentation for this project is available under the project wiki.

Resources for Google Blockly can be found on the Blockly project page.

This project integrations with a number of web services, resources for which can be found below: