EDCare is an AI assistant that uses personalized storytelling to improve memory, cognitive function, and emotional well-being in elderly individuals experiencing memory decline.
This project focuses on an AI-powered assistant designed to enhance the quality of life for elderly individuals through personalized storytelling. The assistant aims to improve memory retention, cognitive function, and emotional well-being by creating engaging and interactive story experiences tailored to the user's life and preferences.
- Memoir Mode: Generates stories based on the user's life experiences.
- Interactive Mode: Presents users with story puzzles or branching narratives.
- Legacy Mode: Assists users in creating a digital legacy.
- Story Elements incorporation
- Mood Recognition and Adaptation
- Multisensory Integration
- Gamified Storytelling
- AI-Powered Memory Exercises
- Therapeutic Storytelling
- Multigenerational Storytelling
- Java 21
- Maven
- MongoDB
- IBM Watson API credentials
-
Clone the repository:
git clone https://github.com/yourusername/edcare.git cd edcare
-
Install dependencies:
mvn install
-
Set up MongoDB:
-
Set up IBM Watson API credentials:
-
Run the application:
mvn spring-boot:run
application.properties looks like this:
spring.application.name=Companion
spring.data.mongodb.uri=mongodb://localhost:27017/edcare
watson.nlu.url=https://api.au-syd.natural-language-understanding.watson.cloud.ibm.com/instances/your-instance-id
watson.nlu.apikey=your-api-key
watson.cloud.apikey=your-cloud-api-key
Analyze and store raw data:
curl -X POST http://localhost:8080/analyze \
-H "Content-Type: application/json" \
-d '{"userProfileId":"123","content":"Sample text to analyze"}'
Generate a story:
curl http://localhost:8080/story/generate/analysisResultId123
Create a user profile:
curl -X POST http://localhost:8080/api/userprofiles \
-H "Content-Type: application/json" \
-d '{"name":"John Doe","age":70,"interests":["gardening","reading"]}'
Endpoint | Method | Description |
---|---|---|
/analyze | POST | Analyze and store raw data |
/story/generate/{analysisResultId} | GET | Generate a story based on analysis results |
/api/userprofiles | POST | Create a new user profile |
/api/userprofiles | GET | Get all user profiles |
/api/userprofiles/{id} | GET | Get a user profile by ID |
/api/userprofiles/{id} | PUT | Update a user profile |
/api/userprofiles/{id} | DELETE | Delete a user profile |
IBM Watson for Natural Language Understanding , Spring Boot community , MongoDB, Java 21
Made with ❤️ by Bits&Bytes