Encounter-mem is a tool designed to help users remember new words encountered in everyday life. It allows users to select and save words from sentences they come across, and generates example sentences using OpenAI's GPT-3 API.
- Select and save words from encountered sentences
- Generate example sentences using OpenAI's GPT-3 API
- Engage in a conversation with OpenAI centered around the selected word, with conversation topics limited by user-set profession and interests
- One-click deployment on Vercel
You can try out an example demo of encounter-mem by visiting https://encounter.haydenhayden.com.
Before deploying encounter-mem, you'll need to complete the following steps:
- Create a Supabase account
- Create a new database in Supabase and make note of your database URL and API key
- Obtain an API key for OpenAI's GPT-3 API
- Set up environment variables for your Supabase database credentials, OpenAI API key, and OpenAI server URL in Vercel (you can find instructions on how to do this in the Vercel documentation)
To deploy encounter-mem to Vercel, click the button below or use this link:
Once deployed, you can start using encounter-mem to select and save words, generate example sentences, and converse with OpenAI.
Encounter-mem requires the following environment variables to be set in Vercel:
OPENAI_API_KEY
: Your OpenAI API keyOPENAI_API_BASE_URL
: The URL for the OpenAI server (https://api.openai.com
)DATABASE_URL
: The connection string for your Supabase databaseNEXTAUTH_SECRET
: Any value will work for this variable, but it must be setEMAIL_FROM
: The email address that will be used to send emails from the appEMAIL_SERVER
: The SMTP server that will be used to send emails from the app
To set your profession and interests, you can navigate to the Profile page in encounter-mem and update the corresponding fields. This will allow the AI to limit its conversation topics to those related to your profession and interests.
Please be aware that encounter-mem is still in its early stages, and the database may be subject to change or reset at any time. Use at your own risk.
- Improve UI/UX design
- Add support for spaced repetition using the Ebbinghaus forgetting curve
- Implement user authentication and authorization system
- Create a library for storing unprocessed sentences
- Provide an API for external software to submit sentences to the database.
If you'd like to contribute to encounter-mem, please fork the repository and create a pull request with your changes. Be sure to include detailed descriptions of your changes and any relevant tests or documentation updates.
Encounter-mem is licensed under the MIT License.