Code Monkey home page Code Monkey logo

sparkai-chatbot-frontend's Introduction

Spark-AI Chatbot Frontend

The code is the frontend for Spark-AI Chatbot. It is written in React and uses Vite as the bundler.

Installation

  • Clone the repo
  • Run npm install
  • Run npm run dev to start the vite server

Project structure

  • src - contains the source code
  • src/components - contains the React components
  • src/components/auth - contains the authentication components
  • src/views - contains the pages
  • src/routes - contains the routes
  • src/assets - contains the images, fonts, etc.

How to contribute

  • Fork the repo
  • Create a new branch
  • Make your changes
  • Create a pull request back into the dev branch of the original repo
  • Your pull request will be reviewed and merged

Keep your branch up to date with the dev branch of the original repo by running git pull origin dev while on your branch:

  • Add the original repo as a second remote: `git remote add upstream
  • Fetch the dev branch of the original repo: git fetch upstream dev
  • rebase your feature branch on the dev branch of the original repo: git rebase upstream/dev

sparkai-chatbot-frontend's People

Contributors

dickreuter avatar okk0 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

sparkai-chatbot-frontend's Issues

Submitted Feedback Pop-up

When feedback is submitted, a message comes up saying feedback submitted (to stop multiple feedback submissions of the same feedback).

Redesign login page

a) Reposition the login form.

b) Add a logo(svg).

c) Activate the password recovery function. [this is mainly a backend change]

Page 1 of - UI (3).pdf

Add functions

Features like summarization, reduction, word cutting, grammar improvement, rephrasing, language swapping, tone matching, incorporation of company goals, and evidencing tools

Add vertical menu bar

Add a vertical menu bar that will display items in the chatbot page:

It will display:

  • Items text and image templates that are downloadable
  • Help with the navigation through different sections of the page:
    • question entry
    • current answer
    • saved question/answer pairs
    • text editor

Bid Tracker Improve Save Functionality

Current: Every time you save a proposal it saves a new one entirely

Improved: If they don’t change the name of the bid then it just saves to the most current version.

Add drop down to bid tracker

User can click on status of bid and dropdown with following colours appears in following order:
New = White Colour fill, black writing and black box outline
Ongoing = #F7AE36 or #F29131
Complete = Black Colour fill with white writing

Intermediary step to store question/answer pairs separately before sending it to the editor

Frontend change:
Currently, the "add response to text editor' button moves the answer to the editor. There should be an intermediary step first:

Move the question/answer pair to an intermediary view. From there it can then be selected (probably via tickbox) to move to the editor for final editing. In the editor, we'll want to see both the question and the answer.

Co-Pilot Function

Have as an editing tool rather than a continuing answer tool.

Be able to highlight a section of the response, and then type in instructions for how you would like the text modified i.e expanded, simplified, or more detail about xyz.

I think it would be good if the highlighted section got instantly replaced by the co-pilot edit back into the response.

Company Library

  • Initial Page after logging in where the user can view and interact with their uploaded data. Eg pdf's, images and Word documents. Which will detail previous bids, case studies, company policies etc.
    The user can start a new bid from here through a button on the chatbot page
  • User can view completed bids which have been previously submitted on the system

Ability to upload text and images

Frontend:
Create a page that allows the uploading of text and images for a given client to a given template. (backend api calls will be provided)

On the main chat site, an additional function to download these templates (via dropdown that displays the respective titles) needs to be provided.

api calls:
/save_text
/save_image
/get_texts_list
/get_images_list
//download_text
/download_image

Copliot

Change copilot: should be more of an editor function

  • expand a section
  • add specific details to the answer

Word count / character count / page count feature

Some tenders get released for a word count, some character count, and some page count. If there could be an input box where there is a drop-down function with options: word/character/page count, then this would help the responses be in accordance with the RFP response limit.

I am currently working on the best prompts for this function so will relay it once I have got a good one which provides responses accurate to the specified limit.

Addition of folder feature

Ability to create folders for each specific bid that writers are working on, allowing them to save documents/pdfs in there.

Removal of 3rd Prompt in Admin Pannel

So there is only the 'Co-pilot prompt' and the 'Answer question for Q/A pair or PDFs Prompt', as not sure of Prompt 2 and Prompt 3 in the admin panel the answer is using.

Collaborative System

Organisations with multiple licences to be able to interact/ collaborate on certain bids:

  • Leave comments
  • Superuser to approve final drafts
  • Allocated team bid for multiple accounts to be invited to a single bid

Tackling Redundancy in Multi Topic Selection

Have the responses for the multi-topic function work so that it doesn't bring up two similar responses.

For some of the multi-topic selection function response, each sub-heading includes the same contents from the database and pretty similar responses.

My attempts in prompting 3b to not include haven't been successful so far. Prompting 3a to generate sub-topics that are separate slightly improves this, but still occurs.

A couple of example questions if that helps you prompt engineering:

  • Please outline your management structure applicable to this contract and how potential issues encountered in delivering the requirements are managed and reported. Provide details of the knowledge, skills and experience within your team who are key to this contract.
  • Contract 1: Contract details and a brief description of the contract delivered including evidence as to your technical capability in this market.

Confirm Data Upload Pop-up

Once you drag a PDF into the drop zone, or click on the ‘upload data’ button, a pop-up will display in the middle of the screen ‘Are you sure you want to upload this document’ to the text and PDF uploader.

When the pop-up comes up the rest of the screen goes darker until either ‘cancel’ or ‘upload data’ button has been pressed.

Something similar to this but just says ‘Upload Data’ and ‘Are you sure you want to update this workflow’ with ‘Upload’ instead of delete.

The colour for the ‘Upload’ button can be #F7AE36 or #F29131 (Or something near that, whatever you think looks best). Can this also match the colour of the functionality box on the response generator page.
image

Question Uploader

  • Upload the RFP
  • Bid stores the questions chronologically (Add current question to proposal > Next question appears in the input)

Dropdown for copilot

When text in the answer is selected, the copilot will pop up a field where the user can enter what the copilot should be doing. This should be enhanced to also have a dropdown for selection of pre-configured action items. For example:

  • Expand this text
  • Make this text shorter
  • Phrase this text differently
  • Other: ... [allows the user to input a custom demand, as it is already the case now]

Tender Scraping Feature

https://docs.google.com/presentation/d/114j_cDHZnXxPkfepM0_m9AqA9yEIyy0HITaCiaUCxXc/edit?usp=sharing

In the document, there is the UI for a page that I imagined could go before the chatbot section. I have included tender specifications and tender scoring criteria examples; I think these could act as another dataset or context for the response to consider to make the response bespoke to each tender they are working on.

I'm going to test out how their responses react to this data by putting it through the {extra_instructions} box and will let you know how it goes.

I'll also get Matt to create a list of the important categories of specifications of each tender the software should scrape for.

General Bid Tracker Touch Ups

Similar to the library page: Thinner lines between docs, less bold lines (maybe light grey?).

Happy to go with what you think looks best and that matches the style of what you do for the company library.

AI Writing Specific Tools

image

Add a small toolbar at the top of the response generation section with 3 key functionalities (expand, shorten, rephrase). This would work by the user highlighting the section and then clicking the button for a custom prompt effective for each button to perform a specific function.

Also to have a button for custom (our current Co-Pilot) which when clicked on would allow you to type how you want the selected answer to be modified, and then when clicked on a further confirm button would perform instruction (basically front-end modifications to our current co-pilot).

PDF and Text Uploader Front End Improvement

  • Whatever you think would look good Alex
  • Remove the text format button on the text uploader page (pointless button)
  • Change ‘Profile name’ to ‘folder’
  • Change text inside the text upload box to ‘Paste bid material here’ (No need for all the current writing)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.