Skip to main content

ยท One min read
Thorsten Suckow-Homberg

conjoon v2.0.0-alpha.0 was just released ๐ŸŽ‰, offering a glimpse of what's to come with the upcoming 2.0 release.

The 2.0 release-branch is mainly focusing on achieving better compliance with the JSON:API-specifications that are documented in the rest-api-description available with the php-lib-conjoon#8-branch.

Pre-releases of extjs-app-webmail and extjs-dev-webmailsim are bundled with this version and demonstrate the changes backends should be expecting if they wish to provide communication endpoints for the webmail client.

Happy testing! โ˜ƒ๏ธ

ยท 2 min read
Thorsten Suckow-Homberg

I have just release conjoon 1.2.1, which is a maintenance release with a focus on the handling of email addresses in routing and general views such as the Inbox View, the editor and the message view.

The new release provides more detailed information about the email address of the recipient or the sender when viewing an email in a related view - this also includes lists where email messages appear:
You're now able to inspect the email address by hovering over the address-element which will then present the full address (incl. the recipient's/sender's name, if available). Also, new messages can now directly be composed by clicking an email address present in any of such views.

Additionally, the routing has been updated to be more generous when it comes to parsing email addresses: Routes like #cn_mail/message/compose/mailto%3Atsuckow%40conjoon.org%20<tsuckow%40conjoon.org> now properly create a new message for the recipients specified in the route, in this case tsuckow@conjoon.org <tsuckow@conjoon.org>.

Changes to the application engineโ€‹

extjs-lib-core now allows for package configurations using the semantic complement of disabled: Users who wish to use enabled instead can now do so.

All Notable changesโ€‹

The notable changes for this release include:

ยท 4 min read
Thorsten Suckow-Homberg

I'm happy to announce conjoon 1.1.0, a feature release that brings a lot of qol-improvements, bug fixes and a major feature to conjoon.

Highlightsโ€‹

extjs-app-localmailaccountโ€‹

With the new authentication package extjs-app-localmailaccount, you're now able to store multiple Email-Accounts directly on your computer. While the first major release of conjoon came bundled with extjs-app-imapuser, an auth-package for authorizing against a single IMAP account (that was in particularly developed for free email hosters), this package now focuses on custom installations where users maintain their own instances of conjoon.

Enabling extjs-app-localmailaccount - Frontend:โ€‹

The package comes bundled with conjoon, so there's nothing left to do for you except for enabling the package. Use the latest version of create-conjoon to ease the installation process - it allows you to copy an official release to the directory of your previous installation (make sure you read the documentation before you overwrite the directory contents, or if you'd rather get a dev environment for conjoon up and running).

Once you have updated, open conjoon.conf.json, then look for the section where extjs-app-imapuser is configured. Add a property named disabled (if not already existing) and set this to true.

{
"extjs-app-imapuser": {
"disabled": true
}
}

For extjs-app-localmailaccount, set the property to false:

{
"extjs-app-localmailaccount": {
"disabled": false
}
}
missing configuration for extjs-app-localmailaccount

In case you have no extjs-app-localmailaccount existing with your conjoon.conf.json, refer to the documentation and utilize the default configuration coming with the package.

Once everything is set configured, restarting your instance of conjoon should now directly boot to the MailDesktopView. A new button will be available in its toolbar:

Clicking it will open up the MailAccountWizard that lets you choose from a set of pre-configured accounts:

tip

You can also apply custom mail server information by scrolling down the list and pick the "...other IMAP account"-entry.

Once you have provided the required details, the Email Account will be stored in the Local Storage of your browser. It is always editable afterwards by selecting the node prepresenting the Email Account from the MailFolderTree on the left side of the MailDesktopView:

Enabling extjs-app-localmailaccount - Backend:โ€‹

Please make sure you take a look at the updates that came with the available backends, namely lumen-app-email - you need to update to the latest version to make sure the updated client can properly communicate with the backend. Make sure you apply the proper api-configuration to your backend instance. Upgrading to a new version of lumen-app-email will also update to the latest version of php-lib-conjoon. Needless to say, lumen-app-email is fully backwards compatible.

Supporting UI-State-managementโ€‹

I have added support for saving the state of the UI so you do not have to expand/collapse various views once you re-enter the application. This is a small qol-improvement for now. The initial support for this opens the door for more improvements in this regard.

Other changesโ€‹

Other notable changes include:

ยท One min read
Thorsten Suckow-Homberg

๐ŸŽ„ I'm happy to announce conjoon 1.0.4, an interim release that brings Dependency Injection to conjoon.

Paving the way for conjoon 1.1.0 that targets support for runtime-replacable plugins, Dependeny Injection allows for a more supple integration of functionality for application instances.

If you're interested in how the Inversion of Control-Container works in conjoon, have a look at this article.

The functionality has been refactored into coon.core.ioc, so if your Ext JS application is in the need of a simple yet powerful and flexible IoC-Container, you're good to go!

๐Ÿ”” Happy Holidays! โ„๏ธ

ยท 2 min read
Thorsten Suckow-Homberg

I'm happy to announce conjoon 1.0, the very first major release.

For updating to the latest version, simply use the installer. It will let you select the latest release when opting for the version to install.

Highlightsโ€‹

v1.0.0 marks the first major release for the JavaScript Email frontend, over 100 tickets related to bugfixes, optimizations and minor features across all projects where closed.

This release focuses on providing a stable frontend in conjunction with lumen-app-email.

Besides the features already introduced with the release candidates, the following features have been added:

Pluginsโ€‹

Installer and CLI actions for lumen-app-emailโ€‹

The installation for lumen-app-email has been simplified with the help of Artisan and CLI commands. To get an instance of lumen-app-email running, use

$ composer create-project conjoon/lumen-app-email {targetDir} {version}

which will start the installation process. For more information, refer to the official guide.

Docker Containerโ€‹

ddev-ms-email has been updated to utilize the installer of lumen-app-email and additionally provides integration options for conjoon so that the container can be used for serving both the backend and the frontend.

$ ddev create-conjoon

will start the installation of conjoon. For more information, refer to the official guide.