[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73949":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":23,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":16,"starSnapshotCount":16,"syncStatus":28,"lastSyncTime":29,"discoverSource":30},73949,"OpenArchiver","LogicLabs-OU\u002FOpenArchiver","LogicLabs-OU","An open-source platform for legally compliant email archiving.","https:\u002F\u002Fopenarchiver.com",null,"TypeScript",2083,108,13,169,0,14,67,71.81,"GNU Affero General Public License v3.0",false,"main",true,[],"2026-06-12 04:01:12","# Open Archiver\n\n[![Docker Compose](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocker%20Compose-2496ED?style=for-the-badge&logo=docker&logoColor=white)](https:\u002F\u002Fwww.docker.com)\n[![PostgreSQL](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPostgreSQL-4169E1?style=for-the-badge&logo=postgresql&logoColor=white)](https:\u002F\u002Fwww.postgresql.org\u002F)\n[![Meilisearch](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMeilisearch-FF5A5F?style=for-the-badge&logo=meilisearch&logoColor=white)](https:\u002F\u002Fwww.meilisearch.com\u002F)\n[![TypeScript](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https:\u002F\u002Fwww.typescriptlang.org\u002F)\n[![Redis](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRedis-DC382D?style=for-the-badge&logo=redis&logoColor=white)](https:\u002F\u002Fredis.io)\n[![SvelteKit](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSvelteKit-FF3E00?style=for-the-badge&logo=svelte&logoColor=white)](https:\u002F\u002Fsvelte.dev\u002F)\n\n**A secure, sovereign, and open-source platform for email archiving.**\n\nOpen Archiver provides a robust, self-hosted solution for archiving, storing, indexing, and searching emails from major platforms, including Google Workspace (Gmail), Microsoft 365, PST files, as well as generic IMAP-enabled email inboxes. Use Open Archiver to keep a permanent, tamper-proof record of your communication history, free from vendor lock-in.\n\n## Screenshots\n\n![Open Archiver Preview](assets\u002Fscreenshots\u002Fdashboard-1.png)\n_Dashboard_\n\n![Open Archiver Preview](assets\u002Fscreenshots\u002Farchived-emails.png)\n_Archived emails_\n\n![Open Archiver Preview](assets\u002Fscreenshots\u002Fsearch.png)\n_Full-text search across all your emails and attachments_\n\n## Join our community!\n\nWe are committed to building an engaging community around Open Archiver, and we are inviting all of you to join our community on Discord to get real-time support and connect with the team.\n\n[![Discord](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FJoin%20our%20Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https:\u002F\u002Fdiscord.gg\u002FMTtD7BhuTQ)\n\n[![Bluesky](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FFollow%20us%20on%20Bluesky-0265D4?style=for-the-badge&logo=bluesky&logoColor=white)](https:\u002F\u002Fbsky.app\u002Fprofile\u002Fopenarchiver.bsky.social)\n\n## 🚀 Live demo\n\nCheck out the live demo here: https:\u002F\u002Fdemo.openarchiver.com\n\nUsername: demo@openarchiver.com\n\nPassword: openarchiver_demo\n\n## Key Features\n\n- **Universal Ingestion**: Connect to any email provider to perform initial bulk imports and maintain continuous, real-time synchronization. Ingestion sources include:\n    - IMAP connection\n    - Google Workspace\n    - Microsoft 365\n    - PST files\n    - Zipped .eml files\n    - Mbox files\n\n- **Secure & Efficient Storage**: Emails are stored in the standard `.eml` format. The system uses deduplication and compression to minimize storage costs. All files are encrypted at rest.\n- **Pluggable Storage Backends**: Support both local filesystem storage and S3-compatible object storage (like AWS S3 or MinIO).\n- **Powerful Search & eDiscovery**: A high-performance search engine indexes the full text of emails and attachments (PDF, DOCX, etc.).\n- **Thread discovery**: The ability to discover if an email belongs to a thread\u002Fconversation and present the context.\n- **Compliance & Retention**: Define granular retention policies to automatically manage the lifecycle of your data. Place legal holds on communications to prevent deletion during litigation (TBD).\n- **File Hash and Encryption**: Email and attachment file hash values are stored in the meta database upon ingestion, meaning any attempt to alter the file content will be identified, ensuring legal and regulatory compliance.\n-   - Each archived email comes with an \"Integrity Report\" feature that indicates if the files are original.\n- **Comprehensive Auditing**: An immutable audit trail logs all system activities, ensuring you have a clear record of who accessed what and when.\n\n## Tech Stack\n\nOpen Archiver is built on a modern, scalable, and maintainable technology stack:\n\n- **Frontend**: SvelteKit with Svelte 5\n- **Backend**: Node.js with Express.js & TypeScript\n- **Job Queue**: BullMQ on Redis for robust, asynchronous processing. (We use Valkey as the Redis service in the Docker Compose deployment mode, but you can use Redis as well.)\n- **Search Engine**: Meilisearch for blazingly fast and resource-efficient search\n- **Database**: PostgreSQL for metadata, user management, and audit logs\n- **Deployment**: Docker Compose deployment\n\n## Deployment\n\n### Prerequisites\n\n- [Docker](https:\u002F\u002Fdocs.docker.com\u002Fget-docker\u002F) and [Docker Compose](https:\u002F\u002Fdocs.docker.com\u002Fcompose\u002Finstall\u002F)\n- A server or local machine with at least 4GB of RAM (2GB of RAM if you use external Postgres, Redis (Valkey) and Meilisearch instances).\n\n### Installation\n\n1.  **Clone the repository:**\n\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002FLogicLabs-OU\u002FOpenArchiver.git\n    cd OpenArchiver\n    ```\n\n2.  **Configure your environment:**\n    Copy the example environment file and customize it with your settings.\n\n    ```bash\n    cp .env.example .env\n    ```\n\n    You will need to edit the `.env` file to set your admin passwords, secret keys, and other essential configuration. Read the .env.example for how to set up.\n\n3.  **Run the application:**\n\n    ```bash\n    docker compose up -d\n    ```\n\n    This command will pull the pre-built Docker images and start all the services (frontend, backend, database, etc.) in the background.\n\n4.  **Access the application:**\n    Once the services are running, you can access the Open Archiver web interface by navigating to `http:\u002F\u002Flocalhost:3000` in your web browser.\n\n## Data Source Configuration\n\nAfter deploying the application, you will need to configure one or more ingestion sources to begin archiving emails. Follow our detailed guides to connect to your email provider:\n\n- [Connecting to Google Workspace](https:\u002F\u002Fdocs.openarchiver.com\u002Fuser-guides\u002Femail-providers\u002Fgoogle-workspace.html)\n- [Connecting to Microsoft 365](https:\u002F\u002Fdocs.openarchiver.com\u002Fuser-guides\u002Femail-providers\u002Fimap.html)\n- [Connecting to a Generic IMAP Server](https:\u002F\u002Fdocs.openarchiver.com\u002Fuser-guides\u002Femail-providers\u002Fimap.html)\n\n## Contributing\n\nWe welcome contributions from the community!\n\n- **Reporting Bugs**: If you find a bug, please open an issue on our GitHub repository.\n- **Suggesting Enhancements**: Have an idea for a new feature? We'd love to hear it. Open an issue to start the discussion.\n- **Code Contributions**: If you'd like to contribute code, please fork the repository and submit a pull request.\n\nPlease read our `CONTRIBUTING.md` file for more details on our code of conduct and the process for submitting pull requests.\n\n## 📈 Star History\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=LogicLabs-OU\u002FOpenArchiver&type=Date)](https:\u002F\u002Fwww.star-history.com\u002F#LogicLabs-OU\u002FOpenArchiver&Date)\n","Open Archiver 是一个开源的电子邮件归档平台，旨在提供合法合规的邮件存储解决方案。项目使用 TypeScript 开发，集成了 Docker Compose、PostgreSQL、Meilisearch 等技术栈，确保了系统的可扩展性和高性能。其核心功能包括支持多种邮件服务（如 Google Workspace 和 Microsoft 365）及 IMAP 邮箱的数据导入与同步、高效安全的数据存储机制（采用 .eml 格式保存邮件，并支持去重和压缩），以及强大的全文搜索能力。此外，该平台还允许用户选择本地文件系统或 S3 兼容的对象存储作为后端存储方案。适用于需要长期保存并能快速检索电子邮件记录的企业或组织，在满足法律合规要求的同时避免供应商锁定问题。",2,"2026-06-11 03:48:01","high_star"]