Giter Site home page Giter Site logo

truscapetre / chatgpt-edge-extension-tracker Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 43 KB

This is an open-source project aimed at developing a browser extension for Microsoft Edge. The extension aims to track your messages timing in ChatGPT. All contribution guidelines, updates, and project details can be found in the README file.

License: MIT License

JavaScript 91.53% HTML 3.87% CSS 4.60%

chatgpt-edge-extension-tracker's People

Contributors

truscapetre avatar

Watchers

 avatar  avatar

chatgpt-edge-extension-tracker's Issues

Eliminate dependency on hardcoded selectors

Currently the buttons for send and edit and identified in the DOM based on hardcoded selectors. In the future, if the buttons change their attributes, the extension will stop working. Assuming that the website will change rapidly otherwise if the website changes a few months there shouldn't be so hard to change also the extension with it.

One possible solution is to add a button which will be pressed right before you press the send button for the first time and than you should try to automatically find a way to uniquely identify that send button. Through an automatically created selector.

If the website is not changing so often this shouldn't be a issue.

Enter key is logged only the first time.

I am not sure this is correct, but it looks like the enter key is logged only the first time after the site is refreshed.
Further enter key presses are not logged. This should be first tested if it is true.

I cannot delete my data

I want to be able to delete or "reset" the data, deleting everything until today should be an option.

Uncaught ReferenceError: browser is not defined

After You press the button in the chatGPT website you can find this error in the edge://extensions/ page.
The error appears bellow the extension.

The error is on line 2 from popup.js file

Uncaught ReferenceError: browser is not defined

After You press the button in the chatGPT website you can find this error in the edge://extensions/ page.
The error appears bellow the extension.

The error is on line 7 from popup.js file

Sometimes tracking doesn't occur during normal operation

I propose we have a warning pop up when we are ready to start tracking the sending of messages.
There should also be a warning sign popping up that the extension is still loading and not yet ready to record the buttons, even though the user is ready to press enter.

This issue might happen if someone enters the site and quickly paste a prompt from the clipboard while the site has not yet loaded and the tracking does not yet start.

You cannot choose the logging location

You should be able to choose the local location of where the logging file/files will be saved.
This feature should be inside the settings menu, not interrupting the usual flow of the extension.

Error when generating report

When you press the button for generating a report, nothing happens and in the Developer Console, you get the following message:

Error handling response: TypeError: activityLog is not iterable
    at aggregateReportData (chrome-extension://kmijkbnpmbmeflnlphnbdfdonkgliccf/content.js:77:43)
    at createReportElement (chrome-extension://kmijkbnpmbmeflnlphnbdfdonkgliccf/content.js:53:22)
    at chrome-extension://kmijkbnpmbmeflnlphnbdfdonkgliccf/content.js:39:20

Edge case not treated for hardcoded selector

You might find yourself in the future in the case where the send button is pressed but using the hardcoded selector, you are actually choosing the wrong button. You should add at least a warning or a error raise for this case, such that the user knows that something went wrong.

A potential workaround is to create a mechanism that checks that the user interface did not change it's way of working and that the page did not change the HTML. Such that your version of the extension keeps working with the version of chat GPT that is currently deployed.
If chatGPT doesn't have a versioning system actively published in the HTML, you could create yourself a versioning system for the page.

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.