diff --git a/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md b/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md
index af50b8a4d0..03a55916db 100644
--- a/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md
+++ b/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md
@@ -12,6 +12,7 @@ permalink: "/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-vide
## New in version 3
- [instant notifications for iOS](#instant-notifications-for-ios)
+- [end-to-end encrypted audio/video calls](#end-to-end-encrypted-audiovideo-calls)
- [database export and import](#database-export-and-import)
- [protocol privacy and performance improvements](#protocol-privacy-and-performance-improvements)
diff --git a/blog/20220928-simplex-chat-v4-encrypted-database.md b/blog/20220928-simplex-chat-v4-encrypted-database.md
new file mode 100644
index 0000000000..d6a6326d92
--- /dev/null
+++ b/blog/20220928-simplex-chat-v4-encrypted-database.md
@@ -0,0 +1,141 @@
+---
+layout: layouts/article.html
+title: "SimpleX Chat v4.0 with encrypted database is released"
+date: 2022-09-28
+permalink: "/blog/20220928-simplex-chat-v4-encrypted-database.html"
+---
+
+# SimpleX Chat v4 with encrypted local database is released
+
+**Published:** Sep 28, 2022
+
+## What's new in v4
+
+- [encrypted on-device chat database](#on-device-chat-database-encrypted-with-passphrase).
+- [support for self-hosted WebRTC ICE servers](#self-hosted-webrtc-ice-servers).
+- [improved stability of creating new connections: more reliable groups, files and contacts](#improved-stability-of-creating-new-connections).
+- [deleting files and media](#deleting-files-and-media).
+- [For developers - TypeScript SDK for integrating with SimpleX Chat](#for-developers---typescript-sdk-for-integrating-with-simplex-chat) (e.g., chat bots or chat assistants).
+- animated images in Android app.
+- disable messages per contact / group in terminal app (it is already supported in mobile apps).
+
+Also, this version adds German language to mobile apps UI - huge thanks to [Michael](https://github.com/mlanp) who contributed them!
+
+Other new features since v3:
+
+- secret chat groups (see details in [v3.1 announcement](./20220808-simplex-chat-v3.1-chat-groups.md#secret-chat-groups) - they are fully decentralized, only their members know these groups exist.
+- accessing messaging servers via Tor with support for .onion server addresses (see details in [v3.1](./20220808-simplex-chat-v3.1-chat-groups.md#access-messaging-servers-via-tor) and [v3.2](./20220901-simplex-chat-v3.2-incognito-mode.md#using-onion-server-addresses-with-tor) announcements) - to protect users anonymity on the TCP transport level.
+- Incognito mode - sharing a random profile name with each new contact, to completely eliminate any shared data between them (see details in [v3.2](./20220901-simplex-chat-v3.2-incognito-mode.md#incognito-mode) announcement).
+- endless scrolling and search in chats.
+- reduced Android APK size for direct download and in F-Droid repo from 200 to 50Mb!
+
+[Implementation audit is arranged for October](#we-ask-you-to-help-us-pay-for-3rd-party-security-audit)!
+
+### On-device chat database encrypted with passphrase
+
+
+
+SimpleX Chat focus has always been on protecting messages in delivery, not when they are stored on the device. This release changes it - now all messages that you receive and send are stored on the device encrypted using SQLCipher 4.0.
+
+If you are already using SimpleX Chat, your database will remain unencrypted until you enter the passphrase via the app settings. You have to remember the passphrase you choose, as there is no way to recover it if it is lost.
+
+By default your passphrase will be stored securely on the device (in KeyChain on iOS or encrypted with the key stored in TPM, if available, on Android) - it is only accessible to the app, and only on one device. Storing passphrase is required for instant notifications to work. In this case, if you lose the passphrase, the app will continue to work, but you will not be able to change the passphrase and to migrate your user profile to another device.
+
+For additional security of your messages you also have the option to remove the passphrase from the device. In this case you will need to enter the passphrase every time you start the app. The notifications will continue to work only while the app is in the background. For iOS it means that periodic and local notifications will work, but instant notifications will only show that there is a message available, but not message content or who it is from - you will need to open the app and enter the passphrase to see the messages. In this case, if you lose the passphrase, you will not be able to open the app or decrypt the database - so make sure you store it safely.
+
+### Self-hosted WebRTC ICE servers
+
+
+
+You could make audio and video calls via SimpleX Chat WebRTC servers since [v3](./20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md#end-to-end-encrypted-audiovideo-calls) - that meant that our servers could observe your IP addresses. This release adds configuration to use your own STUN/TURN servers, helping you protect your privacy.
+
+See [this guide](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/WEBRTC.md) to learn how to deploy your own `coturn` server and to configure the mobile apps to use it.
+
+### Improved stability of creating new connections
+
+Secret groups made SimpleX Chat much more useful, but because SimpleX groups are completely decentralized and for them to work each member should connect to all other members, sometimes these connections fail and the group becomes fragmented - some members do not receive all messages. That was more common for larger groups, as the number of required member connections is O(n^2) of the group size.
+
+The reason for that problem was that some network operations required for group connections were not retried. This release improves stability of all network operations - receiving messages, making new contact connections, receiving files and connecting to members in the groups you join.
+
+### Deleting files and media
+
+
+
+While the database with messages and all contacts is now encrypted, the files you receive and send are not (we are planning to improve it later). To protect the security of the files we have added an option to delete all files from the app storage - just make sure not to do it before the files you send are delivered to the recipients, or they won't receive them.
+
+### For developers - TypeScript SDK for integrating with SimpleX Chat
+
+It's been quite some time since it's been possible to create a chat-bot using SimpleX Chat as a library - but you would have to write Haskell code, and this is not the most widely used language.
+
+With v4 we are announcing [TypeScript SimpleX Chat Client SDK](https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript) that you can use to create any integrations with SimpleX Chat CLI.
+
+You can run SimpleX Chat CLI as a local WebSockets server on any port, we use 5225 here:
+
+```bash
+simplex-chat -p 5225
+```
+
+Then you can make a JavaScript or TypeScript application that would connect to it and control it via a simple WebSocket API. TypeScript SDK defines all necessary types and convenience functions to use in your applications. See this [sample bot](https://github.com/simplex-chat/simplex-chat/blob/stable/packages/simplex-chat-client/typescript/examples/squaring-bot.js) you can start from and [README page](https://github.com/simplex-chat/simplex-chat/tree/ep/blog-v4/packages/simplex-chat-client/typescript).
+
+SimpleX Chat API allows you to:
+
+- create and change user profile (although in most cases you would do it manually, via SimpleX Chat terminal app).
+- create and accept invitations or connect with the contacts.
+- create and manage long-term user address, accepting connection requests automatically.
+- create, join and manage groups - this can be used, for example, to connect two different people who connected to chat-bot.
+- send and receive files.
+
+Some possible applications you can create:
+
+- peer-to-peer trading bots, that would connect people with matching buy/sell orders,
+- bots to access information,
+- language translation bots,
+- etc.
+
+As SimpleX Chat protocols provide strong encryption and authorization of the connections, you could use it not only in various communication scenarios, but also to remotely control any equipment where high level of security is required, for example:
+
+- smart home automation,
+- network services,
+- remote deletion of application data,
+- etc.
+
+We are really looking forward to seeing what applications you create - please submit your ideas and implementations, we will publish the links on a separate page on the website and GitHub repository.
+
+We are planning to announce the prizes to the best projects soon!
+
+## SimpleX platform
+
+Some links to answer the most common questions:
+
+[How can SimpleX deliver messages without user identifiers](./20220511-simplex-chat-v2-images-files.md#the-first-messaging-platform-without-user-identifiers).
+
+[What are the risks to have identifiers assigned to the users](./20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md#why-having-users-identifiers-is-bad-for-the-users).
+
+[Technical details and limitations](./20220723-simplex-chat-v3.1-tor-groups-efficiency.md#privacy-technical-details-and-limitations).
+
+[How SimpleX is different from Session, Matrix, Signal, etc.](https://github.com/simplex-chat/simplex-chat/blob/stable/README.md#frequently-asked-questions).
+
+## We ask you to help us pay for 3rd party security audit
+
+We have already signed the agreement and paid for the security audit!
+
+It is planned for October, and if there are no major issues we will publish this report straight away, otherwise - once we fix them.
+
+This is a major expense for use - over $20,000 - I would really appreciate if you could help us cover some part of this cost with the donations.
+
+Our promise to our users is that SimpleX protocols are and will remain open, and in public domain, - so anybody can build the future implementations of the clients and the servers. We will be establishing a legal framework this year to ensure that it doesn't change if the ownership of SimpleX Chat Ltd changes at any future point.
+
+Please consider making a donation - it will help us to raise more funds. Donating any amount, even the price of the cup of coffee, would make a huge difference for us.
+
+It is possible to donate via:
+
+- [GitHub](https://github.com/sponsors/simplex-chat): it is commission-free for us.
+- [OpenCollective](https://opencollective.com/simplex-chat): it also accepts donations in crypto-currencies, but charges a commission.
+- Monero wallet: 8568eeVjaJ1RQ65ZUn9PRQ8ENtqeX9VVhcCYYhnVLxhV4JtBqw42so2VEUDQZNkFfsH5sXCuV7FN8VhRQ21DkNibTZP57Qt
+- Bitcoin wallet: 1bpefFkzuRoMY3ZuBbZNZxycbg7NYPYTG
+
+Thank you,
+
+Evgeny
+
+SimpleX Chat founder
diff --git a/blog/README.md b/blog/README.md
index b862e3074f..b72c7edc60 100644
--- a/blog/README.md
+++ b/blog/README.md
@@ -1,5 +1,15 @@
# Blog
+Sep 28, 2022 [v4: local database encryption](./20220928-simplex-chat-v4-encrypted-database.md)
+
+- encrypted on-device chat database - if you already use the app, you can encrypt the database in the app settings
+- support for self-hosted WebRTC ICE servers
+- improved stability of creating new connections: more reliable groups, files and contacts
+- deleting files and media - for security and to save storage
+- For developers - TypeScript SDK for integrating with SimpleX Chat
+- support animated images in Android app
+- German language in mobile apps UI
+
Sep 1, 2022 [v3.2: Incognito mode](./20220901-simplex-chat-v3.2-incognito-mode.md)
- Incognito mode - use a new random profile name for each contact
@@ -28,6 +38,7 @@ Jul 23, 2022 [v3.1-beta: access servers via Tor](./20220723-simplex-chat-v3.1-to
Jul 11, 2022 [v3: instant push notifications for iOS and audio/video calls](./20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md):
- chat database export and import
+- end-to-end encrypted audio/video calls
- protocol privacy and performance improvements
Jun 4, 2022 [v2.2: the new Privacy and Security settings](./20220604-simplex-chat-new-privacy-security-settings.md)
diff --git a/blog/images/20220524-clear-chat1.png b/blog/images/20220524-clear-chat1.png
index 832084d603..0527610db6 100644
Binary files a/blog/images/20220524-clear-chat1.png and b/blog/images/20220524-clear-chat1.png differ
diff --git a/blog/images/20220524-clear-chat2.png b/blog/images/20220524-clear-chat2.png
index 8035cb717e..661083cd76 100644
Binary files a/blog/images/20220524-clear-chat2.png and b/blog/images/20220524-clear-chat2.png differ
diff --git a/blog/images/20220604-privacy-settings.png b/blog/images/20220604-privacy-settings.png
index 60928ff0d7..b784a1dbc0 100644
Binary files a/blog/images/20220604-privacy-settings.png and b/blog/images/20220604-privacy-settings.png differ
diff --git a/blog/images/20220711-call-in-progress.png b/blog/images/20220711-call-in-progress.png
index 9f3a45d38d..68f592ef85 100644
Binary files a/blog/images/20220711-call-in-progress.png and b/blog/images/20220711-call-in-progress.png differ
diff --git a/blog/images/20220711-database-chat-stopped.png b/blog/images/20220711-database-chat-stopped.png
index b1608e8275..76b0bc3740 100644
Binary files a/blog/images/20220711-database-chat-stopped.png and b/blog/images/20220711-database-chat-stopped.png differ
diff --git a/blog/images/20220711-notifications.png b/blog/images/20220711-notifications.png
index ef077f0b81..8e19e92974 100644
Binary files a/blog/images/20220711-notifications.png and b/blog/images/20220711-notifications.png differ
diff --git a/blog/images/20220723-group-accept.png b/blog/images/20220723-group-accept.png
index d2c6aa79e1..8f175216f3 100644
Binary files a/blog/images/20220723-group-accept.png and b/blog/images/20220723-group-accept.png differ
diff --git a/blog/images/20220723-group-invite.png b/blog/images/20220723-group-invite.png
index b03b82e854..12dfa669b4 100644
Binary files a/blog/images/20220723-group-invite.png and b/blog/images/20220723-group-invite.png differ
diff --git a/blog/images/20220723-group-leave.png b/blog/images/20220723-group-leave.png
index 690ee26e24..5d8d3e4ffd 100644
Binary files a/blog/images/20220723-group-leave.png and b/blog/images/20220723-group-leave.png differ
diff --git a/blog/images/20220808-group1.png b/blog/images/20220808-group1.png
index cdfae70cbd..5c89387a09 100644
Binary files a/blog/images/20220808-group1.png and b/blog/images/20220808-group1.png differ
diff --git a/blog/images/20220808-group2.png b/blog/images/20220808-group2.png
index 26a6f71568..0fa4b2ac05 100644
Binary files a/blog/images/20220808-group2.png and b/blog/images/20220808-group2.png differ
diff --git a/blog/images/20220808-group3.png b/blog/images/20220808-group3.png
index 943f4abbd7..0081b2f925 100644
Binary files a/blog/images/20220808-group3.png and b/blog/images/20220808-group3.png differ
diff --git a/blog/images/20220808-icons.png b/blog/images/20220808-icons.png
index f02fc5bd0b..e8f2baced8 100644
Binary files a/blog/images/20220808-icons.png and b/blog/images/20220808-icons.png differ
diff --git a/blog/images/20220808-network.png b/blog/images/20220808-network.png
index 652ca87c09..26661bcc96 100644
Binary files a/blog/images/20220808-network.png and b/blog/images/20220808-network.png differ
diff --git a/blog/images/20220901-incognito1.png b/blog/images/20220901-incognito1.png
index 71bb817dc0..38a62000a2 100644
Binary files a/blog/images/20220901-incognito1.png and b/blog/images/20220901-incognito1.png differ
diff --git a/blog/images/20220901-incognito2.png b/blog/images/20220901-incognito2.png
index 2999db3fda..73a9e7dc4f 100644
Binary files a/blog/images/20220901-incognito2.png and b/blog/images/20220901-incognito2.png differ
diff --git a/blog/images/20220901-incognito3.png b/blog/images/20220901-incognito3.png
index ef6c0db6cc..9b4bf97b70 100644
Binary files a/blog/images/20220901-incognito3.png and b/blog/images/20220901-incognito3.png differ
diff --git a/blog/images/20220901-onion1.png b/blog/images/20220901-onion1.png
index 9ab4cc5a4d..e16cc74174 100644
Binary files a/blog/images/20220901-onion1.png and b/blog/images/20220901-onion1.png differ
diff --git a/blog/images/20220901-onion2.png b/blog/images/20220901-onion2.png
index e746381666..5cedd2fe67 100644
Binary files a/blog/images/20220901-onion2.png and b/blog/images/20220901-onion2.png differ
diff --git a/blog/images/20220928-files-media.png b/blog/images/20220928-files-media.png
new file mode 100644
index 0000000000..03d349b7b7
Binary files /dev/null and b/blog/images/20220928-files-media.png differ
diff --git a/blog/images/20220928-ice-servers.png b/blog/images/20220928-ice-servers.png
new file mode 100644
index 0000000000..c63a8f3f1e
Binary files /dev/null and b/blog/images/20220928-ice-servers.png differ
diff --git a/blog/images/20220928-passphrase.png b/blog/images/20220928-passphrase.png
new file mode 100644
index 0000000000..161bfb8b39
Binary files /dev/null and b/blog/images/20220928-passphrase.png differ