├── img ├── talk2gpt.jpg ├── android-icon-16x16.png ├── android-icon-32x32.png ├── android-icon-36x36.png ├── android-icon-48x48.png ├── android-icon-57x57.png ├── android-icon-60x60.png ├── android-icon-72x72.png ├── android-icon-76x76.png ├── android-icon-96x96.png ├── android-icon-114x114.png ├── android-icon-120x120.png ├── android-icon-144x144.png ├── android-icon-152x152.png ├── android-icon-180x180.png └── android-icon-192x192.png ├── js ├── storage.js ├── voices.js ├── incremental-text.js ├── $.js ├── listener.js ├── openai.js ├── ok.js ├── listen.js ├── events.js ├── interim.js └── index.js ├── README.md ├── events └── index.html ├── listener └── index.html ├── interim └── index.html ├── ok └── index.html ├── LICENSE ├── sw.js ├── manifest.json ├── css ├── index.css └── settings.css └── index.html /img/talk2gpt.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/talk2gpt.jpg -------------------------------------------------------------------------------- /img/android-icon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-16x16.png -------------------------------------------------------------------------------- /img/android-icon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-32x32.png -------------------------------------------------------------------------------- /img/android-icon-36x36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-36x36.png -------------------------------------------------------------------------------- /img/android-icon-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-48x48.png -------------------------------------------------------------------------------- /img/android-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-57x57.png -------------------------------------------------------------------------------- /img/android-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-60x60.png -------------------------------------------------------------------------------- /img/android-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-72x72.png -------------------------------------------------------------------------------- /img/android-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-76x76.png -------------------------------------------------------------------------------- /img/android-icon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-96x96.png -------------------------------------------------------------------------------- /img/android-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-114x114.png -------------------------------------------------------------------------------- /img/android-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-120x120.png -------------------------------------------------------------------------------- /img/android-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-144x144.png -------------------------------------------------------------------------------- /img/android-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-152x152.png -------------------------------------------------------------------------------- /img/android-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-180x180.png -------------------------------------------------------------------------------- /img/android-icon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WebReflection/talk2gpt/HEAD/img/android-icon-192x192.png -------------------------------------------------------------------------------- /js/storage.js: -------------------------------------------------------------------------------- 1 | /*! (c) Andrea Giammarchi */ 2 | 3 | const { 4 | JSON, 5 | localStorage, 6 | sessionStorage, 7 | } = globalThis; 8 | 9 | const {parse, stringify} = JSON; 10 | 11 | const JSONStorage = storage => ({ 12 | get: key => parse(storage.getItem(key) || 'null'), 13 | set: (key, value) => storage.setItem(key, stringify(value)) 14 | }); 15 | 16 | export const local = JSONStorage(localStorage); 17 | export const session = JSONStorage(sessionStorage); 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Talk2GPT 2 | 3 | **Social Media Photo by [Rock'n Roll Monkey](https://unsplash.com/@rocknrollmonkey) on [Unsplash](https://unsplash.com/)** 4 | 5 | A 100% client-side PoC of OpenAI Chat GPT API via Web Speech API. 6 | 7 | It requires your OpenAI secret but it does not store it anywhere except for your browser session storage. 8 | 9 | [Live Here](https://webreflection.github.io/talk2gpt/) 10 | 11 | - - - 12 | 13 | The rest of the folders are live to test and demo the API. 14 | -------------------------------------------------------------------------------- /events/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 |