An alternative OpenAI client inspired by virtual assistants, offering intelligent responses and assistance.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Synapse is a versatile and innovative AI-powered application that serves as an alternative client, drawing inspiration from virtual assistants. It leverages the cutting-edge imaging and natural language processing technologies developed by OpenAI to provide users with a comprehensive and effective solution.
Driven by the power of artificial intelligence, Synapse offers intelligent responses and personalized assistance to users in a wide range of tasks. With its integration of OpenAI's imaging technology, Synapse is capable of analyzing and interpreting images, enabling users to gain valuable insights and information.
In addition to its imaging capabilities, Synapse also incorporates OpenAI's Whisper technology for natural language processing. This integration allows Synapse to understand and respond to user queries with remarkable accuracy and efficiency, creating a more natural and conversational experience.
Synapse aims to redefine the way users interact with AI applications by providing a seamless and intuitive interface. Its user-friendly design and intelligent features make it an indispensable tool for anyone seeking intelligent and efficient assistance.
Please note that Synapse is an independent project developed by a community of dedicated developers, and it is not directly affiliated with OpenAI.
Images
Work in progress, no image for now.
- @heroicons/vue
- @intlify/unplugin-vue-i18n
- @tauri-apps/api
- axios
- daysiui
- firebase
- pinia
- theme-change
- vue
- vue-i18n
- vue-router
-
Get a necessary API Keys
-
Clone the repo
git clone https://github.com/KrozT/synapse-ai.git
-
Install packages
yarn install
-
Add OpenAI API Key to your environment variables
# OpenAI API Key SYNAPSE_OPENAI_API_KEY=<YOUR API KEY>
-
Define the application name on the environment variables (Optional)
# Application Name SYNAPSE_APP_NAME=<YOUR APP NAME>
-
Add Firebase configuration to your environment variables (Recommended)
# Firebase Config SYNAPSE_FIREBASE_API_KEY=<YOUR API KEY> SYNAPSE_FIREBASE_AUTH_DOMAIN=<YOUR AUTH DOMAIN> SYNAPSE_FIREBASE_PROJECT_ID=<YOUR PROJECT ID> SYNAPSE_FIREBASE_STORAGE_BUCKET=<YOUR STORAGE BUCKET> SYNAPSE_FIREBASE_MESSAGING_SENDER_ID=<YOUR MESSAGING SENDER ID> SYNAPSE_FIREBASE_APP_ID=<YOUR APP ID> SYNAPSE_FIREBASE_MEASUREMENT_ID=<YOUR MEASUREMENT ID>
Firebase configuration is stored on environment variables for easy and fast deployment without having to change the code. If you don't want to use environment variables, you can change the configuration on the
src/composables/database.ts
file. -
Build project
yarn run build
Once you have the project built and running on your preferred hosting service or locally, just go to the address where you have it hosted or your localhost and you will be able to use it.
You can add new languages to the project by following these steps:
- Create a new file in the
src/locales
folder with the name of the language you want to add following the IS0 631-1 standard (e.g.fr-FR.json
). - Copy the contents of the
src/locales/en-US.json
file and paste it into the file you just created. - Change the values of the keys to the language you want to add.
- Speech Recognition
- Web Speech API
- Speech to text
- Text to speech
- OpenAI Whisper API
- Speech to text
- Web Speech API
- Language Model Integration
- GPT-3.5
- Chat
- GPT-4
- GPT-3.5
- DALL-E Integration
- Image generation
- Image editing
- Firebase Integration
- Database
- Analytics
- User Authentication
- User Interface
- Responsive
- Mobile-friendly
- Automatic language detection (based on browser language)
- Dark mode
- Internationalization
- English (United States)
- Spanish (Chile)
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.