Welcome to ChatVault, the innovative Kotlin Spring Boot application tailored for storing backups of your WhatsApp conversations. Whether you’re importing from multiple sources like API, email, or monitoring directories, ChatVault makes accessing your chats as breezy as sending a text. Let’s dive into how you can efficiently set up and use this application.
Key Features of ChatVault
- Directory Importing: Easily import exported WhatsApp files by placing them in designated directories.
- Automated Email Backup: Send your chats as email attachments, and ChatVault will automatically archive them.
- Intuitive Frontend: Enjoy a user-friendly interface to effortlessly navigate conversations, search messages, and view attachments.
How to Export and Import WhatsApp Chats
To back up your WhatsApp conversations, follow these steps:
- Read the official WhatsApp FAQ for detailed instructions.
- Once you have the exported file, choose one of the following methods to import it to ChatVault:
- Map a shared folder between your mobile device and ChatVault’s import directory.
- Email the chat file for automatic import into ChatVault.
- Zip the exported file and upload it through the ChatVault interface.
Repository Structure
Understanding how the repository is structured is essential when working with ChatVault. It consists of two primary modules:
- Frontend: Built with JavaScript, Vue, and Nuxt, this module takes care of what users will see in the browser.
- Backend: Developed with Kotlin, Java, Spring Boot, and Gradle, this module manages the application’s data and logistics.
Running ChatVault
To get ChatVault up and running, undertake the following:
Run Frontend Module
The frontend is a VueNuxt application. To run it using npm commands:
npm run dev
The frontend will typically listen on port 3000 unless the backend has already been started, in which case it will pick another available port.
Run Backend Module
To start the backend application independently:
./gradlew run
The backend listens to port 8080 by default.
Using Docker
If you prefer using Docker, ensure you authenticate to the GitHub Container Registry (steps can be found here). To create a database and build your project locally, run:
docker-compose -f compose.yml
To download the latest Docker image, execute:
docker pull ghcr.io/vitormarcal/chatvault:latest
Environment Variables
For Docker deployment, setting environment variables is crucial. Remember, variables should be in uppercase. Here’s a quick rundown:
| Environment Variable | Requirement | Example |
|---|---|---|
| spring.datasource.url | Required | jdbc:postgresql://database_host:5432/database_name |
| chatvault.email.host | Required to use email import feature | imap.server.com |
| chatvault.msgparser.dateformat | Not required, but recommended | ddMMyyyy HH:mm |
Note: If you don’t define chatvault.msgparser.dateformat, the application may struggle to resolve some ambiguities.
Troubleshooting Tips
If you encounter any issues while getting ChatVault up and running, consider the following troubleshooting steps:
- Ensure that your environment variables are correctly set up and follow the required format.
- Check that your ports (3000 for frontend and 8080 for backend) are not being used by other applications.
- If issues persist with Docker, verify your authentication status with the GitHub Container Registry.
- If you’ve followed all these steps and still face problems, consult the ChatVault project’s GitHub repository for community support.
For more insights, updates, or to collaborate on AI development projects, stay connected with [fxis.ai](https://fxis.ai/edu).
Conclusion
At [fxis.ai](https://fxis.ai/edu), we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

