Jump to content
Invision Focus

RSS BOT

+Members
  • Content Count

    146
  • Joined

  • Last visited

    Never

Community Reputation

0 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Since the feature was announced at last year’s World Wide Developer Conference (WWDC) we have received lots of requests to implement Sign in with Apple in Invision Community. We’re pleased to announce that as of 4.5 this is now available. You will need a paid Apple developer account to use it but once enabled users will be able to sign in using their Apple ID and all the convenience that brings. Touch ID and Face ID is supported natively where available and works across all your devices. Choose to share or hide your email address Isn’t it just another login button? Sign in with Apple is built on similar technologies as other login buttons such as those already available in Invision Community from Facebook, Google and Microsoft. The difference is Apple’s unique focus on privacy. On certain community types users can be reluctant to sign up when they fear they need to disclose lots of personal details. Every community is different so allowing your users to share as little or as much info as they like could be important to your success. Apple have stated that no user tracking will take place in contrast to other services where this forms a part of their business model. When signing in with their Apple ID the user can choose whether or not to share their real email address with your community. If the user chooses to hide their email address then your community will receive a relay email address that will forward to their real address. The email address used is unique to your community so the user can retain control. Can users link their existing Invision Community accounts? Yes! If a user signs in using the Apple button and shares their real email address, then providing they already have an account on your community they will be prompted to link their account in the same way as other social login buttons. They can also link an existing account from their account settings. If linking from account settings then the email addresses used do not need to match. Sign in with Apple is already enabled here on our community and is available in the 4.5 beta available to download now. View the full article
  2. We've been on a little journey together since we announced the first Invision Community 4.5 feature way back in November 2019. The first feature we announced was a revamped Admin Control Panel interface which created more visual space and brightened it up. Actually, we made it so bright that the first feature request was to add a dark mode (which we did). In the space of three short months, we had spoken about Club improvements, invites and referrals, RSS feed improvements, blog categories, the simple stock photo picker, search insights, security enhancements, user interface updates, new statistic views, and notification improvements. Most will agree that March and April seemed to last months, thanks to a global pandemic. We used these extra days to talk about marking posts as a solution, topic view summary, Zapier integration, forum view updates, post-installation onboarding, private staff notes, page builder widgets, theme designer improvements, a new default theme, language system updates and everything else we missed. We have also revamped the front end user interface to modernise the look and feel but also to introduce new CSS frameworks, variables and other time-saving features our design team have been eager to implement. On the subject of modernisation, we've deprecated some legacy functionality. We've given up trying to make anything look good with IE11 which last saw an update in 2013. We've also deprecated older caching engines like Memcache, APC and Wincache and recommend using Redis instead. The web hosting and domain management features of Commerce are also deprecated as is BBCode. BBCode has its roots in the earliest bulletin-board systems long before rich text editors were common use. It's 2020; we should no longer be asked to type in special codes in square brackets to format text. BBCode is still functional in Invision Community 4.5, but it is likely to be removed in a future version. Now that primary development has finished, we move onto the beta testing stage. This is where you get to try it out and evaluate the new features before scheduling your own upgrades. As always, we do recommend that you only test early betas on staging sites or simple test sites. Many a weekend has been ruined by over-enthusiastic upgrading of live sites; so we don't recommend that. You'll also notice that we're running Invision Community 4.5 on our own site. If you do spot an issue, please let us know in the bug tracker. I've been creating and releasing products for close to twenty years now, and I still get a real buzz out of hitting the release button. It's always a pleasure to see the result of hundreds of hours of coding, dozens of meetings and numerous passionate exchanges among the team. You can access the beta in your client area. We hope you enjoy Invision Community 4.5! View the full article
  3. Almost ten years ago we launched the Marketplace; a place to connect Invision Community owners with talented developers creating new functionality. Over the decade, the Marketplace has grown to hold thousands of applications, large and small. For many Invision Community owners, the Marketplace has become an essential resource. Our aim was always to have the Marketplace available inside your Admin Control Panel to make it even easier to purchase and install extra functionality. I'm pleased to say that as of Invision Community 4.5, this is now a reality. You can browse the Marketplace and install new add-ons without leaving the Admin Control Panel. Obtaining Resources Paid resources can be purchased directly from the Marketplace and are available to install immediately after the payment is complete. You no longer need to download and install the files yourself. You may also notice some additional information with the resource listing, we'll be introducing a new 'tab' to marketplace resources to allow the authors to provide more useful information such as answers to frequently asked questions, or configuration instructions etc. The video below takes you through the purchase and installation of a Marketplace application. marketplace-install.mp4 Installing an Application Updates Some of the eagle-eyed among you may have noticed in the first screenshot that there are more 'bubbles' showing in the menu on the left. These are supported for Applications, Plugins, Themes and Languages. In Invision Community 4.5 every resource available via the AdminCP is automatically versioned, you will see update notifications for everything you have installed (previously, you would only see update notices if the resource author supports them). Installing an update is as simple as clicking on the update notice, then clicking 'update' on the Marketplace listing. Installing Updates Downloads Changes Our Marketplace is built on our Downloads application, during development of this feature we needed to add new functionality. We have included as many of these improvements as possible in our software for the benefit of our customers, some of these are: Custom Fields can now be set to only show to members that have purchased a file. Files can now be set to accept a single file upload instead of multiple. New file versions can now be moderated without hiding the current version from view. Downloads REST API Performance Improvements New /download endpoint that counts the download Added more data to the /downloads/file/{id} response Ability to sort file results by last updated date We hope you're as excited about this feature as we are. View the full article
  4. As the deadline slowly comes down, two last feature additions race towards the descending door and slide in underneath with seconds to spare. If you've never seen "Raiders of the Lost Ark", then you probably think this is a weird way to start a blog. As we wrap up development for Invision Community 4.5, we squeezed in two extra features that I want to talk about today. Per Topic Post Approval The first is a way to cool down a heated topic without locking it. Right now you can put an entire forum on post-approval. This means that moderators must review and approve all new posts before they are allowed to be publicly displayed. As of Invision Community 4.5, you can now choose to set a single topic to post-approval regardless of the forum setting. This is a great way to let a topic cool off but still receive new replies to review before adding to the topic. Club Terms and Conditions The ways that clubs are used throughout the many communities that run Invision Community are becoming increasingly varied. A popular request is to allow members to agree to a set of club-specific terms and conditions before they can contribute to the club. Invision Community 4.5 now allows the club owner to set up its own terms and conditions. You can optionally enforce that members agree to them before continuing. That's it for feature announcements. We're excited to be closing development on Invision Community 4.5 and move towards a beta in the coming weeks. View the full article
  5. If your brand sells a product or service, the first thing that comes to mind as a benefit to building your community is support deflection. And it's easy to see why. It's something you can quickly calculate an ROI for. Let's say every 20 hits to a public question with a solved answer from a client or team member equates to one less ticket. If a ticket costs $10 to solve on average, it's straightforward to see the value by calculating deflected tickets. Let's say your busy public support community had 20,000 hits a month; you've just saved $200,000 a month in support costs. Great! But before you finish there, I want you to consider the rewards a brand community can offer. A public support desk isn't a community. It's likely most of your customers join because of an issue with your product. They tap in some keywords on Google and come across your site. They see a bunch of solved questions like theirs, and they either get the fix and bounce out, or post and wait for a reply. With nothing to get them to come back, once they have the answer they'll likely bounce out then and only come back when they hit a new problem. That's not a community. A community is a place where people return multiple times to collaborate, learn and grow together. "[A brand community is] a group of people who share an identity and a mutual concern for one another's welfare - who participate in shared experiences that are shaped by a brand." - Carrie Melissa Jones For that, you need to look beyond the support desk and expand into more use cases, and there are compelling reasons to do this. Shared experiences Allowing your customers to share their experiences with your products can lead to unique brand stories that reinforce bonds between members and creates social solidarity in the community. A few years ago, I remember reading a post on a travel community. A family were flying with Delta and their son who has autism was becoming more and more distressed with the change in routine for that day. A Delta employee saw this and came and spoke with the family, helped settle the boy and ensured they boarded early to avoid the crush of passengers. It's a small moment of kindness that wouldn't make headlines, but it was very memorable for this family; enough so that they posted about it. This post had numerous replies in praise for the airline and no doubt made many of them think of Delta when booking their next flight. "[Social solidarity is] not just passive tolerance but felt concern for what is individual and particular about the other person." - Alex Honneth "The Struggle for Recognition" All those stories, connections and moments build social capital and loyalty for your brand. Feedback Your customers are already talking about your product. Some of it will be good, and some of it won't be good. They are already talking about it on social media, and in numerous communities, they belong to. If you do not have space within your community for your customers to leave feedback, then you're missing out on a massive benefit. You get a chance to address negative feedback before it spills out further into the public domain. Likewise, positive feedback makes for compelling customer success stories. Feedback is a great way to crowdsource innovation and to guide sales and marketing on how your customers are using your products and where the gaps are. Owning your niche Allowing space for conversations relating to your product makes good sense. If you sold a fitness tracker, then it makes good sense to have areas for discussions revolving around wellness areas such as sleep, diet and exercise. Likewise, a mobile phone network will do well having areas related to the various brands of mobile phones. "There is status that comes from community. It is the status of respect in return for contribution for caring for seeing and being in sync with others. Especially others with no ability to repay you." - Seth Godin Creating these spaces encourages return visits beyond direct support for the product. Those return visits are what makes your community a community. View the full article
  6. One of the most popular requests we get for Commerce is for a free trial period for subscriptions. We've heard from many clients that wish to allow their members a free, or reduced cost trial period before auto-renewing the full price. I'm pleased to say that we've now added this functionality into Invision Community 4.5. Let us take a look at how it works. Initial Terms In 4.5 you can now specify an initial term that is different to the normal renewal term for any subscription plan or product. For example, you could make the initial term $0 for 1 week and the normal renewal term $10 per month which will allow you to create 1 week free trial. The initial term doesn't have to be $0, you can use any special price for the initial term you like. Subscription Plans showing Free Trials For developers creating their own applications with Commerce integration, this functionality is also available to you simply by passing a DateInterval object representing the initial term when creating the invoice. Collecting Payment Details for Free Trials Previously, if you were buying something that is free, the entire of the last step of the checkout would just be skipped and the invoice marked as paid. In 4.5, if: The user is purchasing something which has a free initial period, but also has a renewal term (i.e. is a free trial), and You have a payment method which can collect card details (Stripe, Braintree, etc) The user will be prompted to provide payment details that will not be charged until after the free trial. If the user already has a card on file they will not be prompted to provide the details again but will see a confirmation screen rather than the order just being marked paid immediately. Checkout Process for a Free Trial As you can see, allowing a free or reduced cost trial period has never been easier. We hope that you enjoy using this new feature of Invision Community 4.5. View the full article
  7. We started talking about Invision Community 4.5 way back in November of last year. Now, less than six months later, it's ready for you to test. While we put the finishing touches to a few features, we have set up a preview site so you can test out the new features, leave your feedback and make a note of any bugs you spot. Head over now to the Invision Community Alpha test site. Please be aware that this test site is running in 'development mode' so it is automatically updated with the latest fixes throughout the day. This means it has to work extra hard on each click as there are no caches, pre-built languages or templates to use, so it will be a lot slower than a production version. So please don't worry about it being a touch slow, and definitely don't try and run Page Speed analysis tools on the alpha site! You can read about the headline features over in our product updates blog. Let us know what you think! View the full article
  8. We have announced a lot of new things coming soon with Invision Community 4.5. Most of these are pretty big new features worth a blog on their own. However, we've made a lot of smaller changes that may not deserve their own blog but still have a significant impact. Let's run through some of those. Performance Improvements For every major release, we take some time to run through the code and look at ways to make Invision Community run more efficiently. For Invision Community 4.5, we've made node forms, sitemaps and commonly run SQL queries more efficient, which is excellent news for you and your users who get reduced server load and a snappier community. TikTok Embed Although it confuses me greatly, TikTok has taken the internet by storm. We have added it to the embed list so pasting a TikTok share link automatically shows the video ready to play in the comment. A TikTok Upload Chunking Uploading large files can be tricky. Typically trying to push a large file to a server results in timeouts, memory issues and eventually frustration. We have added chunked uploading when using S3. Put simply; this uploads part of the file at a time to prevent memory issues and the server timing out waiting for the upload to finish. View Members by Rank Very recently, we were asked how you can view all members in the ACP of a specific rank. It turned out you couldn't. This quick change was added into Invision Community 4.5. Showing members with a specific rank in the AdminCP Download Statistics While Invision Community 4.5 has new and improved statistic displays, a common request was to be able to download the raw data. This is now possible. Export stats as a CSV Downloads In Invision Community 4.5, when you require approval of new versions of files submitted to Downloads, the original version will no longer be hidden from view. We've added a new flow for moderators to approve these new versions. Live Meta Tag Editor Invision Community 4.5 seemed like a great time to run through this feature and tweak the functionality to make it more useful. Now it's possible to remove default meta tags, and it's easier to remove custom tags. Closed Tag Autocomplete When using the closed tag system where a user can select from one of your preset tags, we have added a search box to make it easier to find a single tag from a list of potentially hundreds. EU Tax Support in Commerce Tax doesn't have to be taxing! But it generally is. Countries within the EU often have complex tax rates. Commerce now supports multiple tax rates for consumers, businesses and EU VAT-registered businesses. That concludes our mini round-up of all the things we've not talked about yet. Let me know which one you're looking forward to most! View the full article
  9. We have announced a lot of new things coming soon with Invision Community 4.5. Most of these are pretty big new features worth a blog on their own. However, we've made a lot of smaller changes that may not deserve their own blog but still have a significant impact. Let's run through some of those. Performance Improvements For every major release, we take some time to run through the code and look at ways to make Invision Community run more efficiently. For Invision Community 4.5, we've made node forms, sitemaps and commonly run SQL queries more efficient, which is excellent news for you and your users who get reduced server load and a snappier community. TikTok Embed Although it confuses me greatly, TikTok has taken the internet by storm. We have added it to the embed list so pasting a TikTok share link automatically shows the video ready to play in the comment. A TikTok Upload Chunking Uploading large files can be tricky. Typically trying to push a large file to a server results in timeouts, memory issues and eventually frustration. We have added chunked uploading when using S3. Put simply; this uploads part of the file at a time to prevent memory issues and the server timing out waiting for the upload to finish. View Members by Rank Very recently, we were asked how you can view all members in the ACP of a specific rank. It turned out you couldn't. This quick change was added into Invision Community 4.5. Showing members with a specific rank in the AdminCP Download Statistics While Invision Community 4.5 has new and improved statistic displays, a common request was to be able to download the raw data. This is now possible. Export stats as a CSV Downloads In Invision Community 4.5, when you require approval of new versions of files submitted to Downloads, the original version will no longer be hidden from view. We've added a new flow for moderators to approve these new versions. Live Meta Tag Editor Invision Community 4.5 seemed like a great time to run through this feature and tweak the functionality to make it more useful. Now it's possible to remove default meta tags, and it's easier to remove custom tags. Closed Tag Autocomplete When using the closed tag system where a user can select from one of your preset tags, we have added a search box to make it easier to find a single tag from a list of potentially hundreds. EU Tax Support in Commerce Tax doesn't have to be taxing! But it generally is. Countries within the EU often have complex tax rates. Commerce now supports multiple tax rates for consumers, businesses and EU VAT-registered businesses. That concludes our mini round-up of all the things we've not talked about yet. Let me know which one you're looking forward to most! View the full article
  10. Ever since Invision Community 4.0, there has been a huge focus on making communities multi-lingual by providing translation features inside the AdminCP. We have received a lot of feedback on our multi-lingual and translation tools over the past year, and we're happy to announce these new features coming to Invision Community 4.5. Pages Phrase Tools If you have the Pages application, you can also use these phrases in HTML pages and HTML Blocks without needing to visit the translation tools area. Simply use the tag editor in the sidebar when editing a page or block's contents. The new phrases sidebar options You can quickly create new multi-lingual phrases by clicking the + icon. The new add phrase dialog Additionally, WYSIWYG Blocks have now been made translatable, so you can now create WYSIWYG blocks that will display their content in specific languages. Translation Tools Language pack creators can now set a version update URL which is checked to notify admins within the AdminCP that an update available, just like the theme system. This is a great way to notify customers when fixes are available. Finally, you can now quickly add a new phrase from the Translation Tools page without the need to use the developer tools. The new "Add Phrase" option These little changes should make a huge difference in your workflow, and make it easier than ever to create fully multi-lingual pages throughout your site. View the full article
  11. Ever since Invision Community 4.0, there has been a huge focus on making communities multi-lingual by providing translation features inside the AdminCP. We have received a lot of feedback on our multi-lingual and translation tools over the past year, and we're happy to announce these new features coming to Invision Community 4.5. Pages Phrase Tools If you have the Pages application, you can also use these phrases in HTML pages and HTML Blocks without needing to visit the translation tools area. Simply use the tag editor in the sidebar when editing a page or block's contents. The new phrases sidebar options You can quickly create new multi-lingual phrases by clicking the + icon. The new add phrase dialog Additionally, WYSIWYG Blocks have now been made translatable, so you can now create WYSIWYG blocks that will display their content in specific languages. Translation Tools Language pack creators can now set a version update URL which is checked to notify admins within the AdminCP that an update available, just like the theme system. This is a great way to notify customers when fixes are available. Finally, you can now quickly add a new phrase from the Translation Tools page without the need to use the developer tools. The new "Add Phrase" option These little changes should make a huge difference in your workflow, and make it easier than ever to create fully multi-lingual pages throughout your site. View the full article
  12. If you've been around Invision Community for a while, you'll know our frontend default theme hasn't significantly evolved since the early days of 4.0. Indeed, the last significant refresh came with 4.2. With the upcoming release of 4.5, we wanted to revisit the default theme and give it a facelift for 2020, as well as make incremental improvements to the underlying codebase as a stepping stone to a bigger re-engineering in a future version. In this entry, I want to talk a little about some of the design decisions that went into building the new theme. Goals Redesigning for the sake of it is never a good idea, so we first laid out what we wanted to achieve: A brighter UI with more saturation & contrast and simpler overall color scheme Improved typography Better, more consistent, spacing around and between elements, especially on mobile Better logical grouping of sections of each page Reducing underutilized links/buttons on the page and finding alternative ways of making them available Improving how post states are displayed Modernizing and enhancing the underlying code that powers the default theme Let's talk a little about each of these. Brighter UI The most obvious change will be that our default colors are brighter and more saturated than before. Before making any changes, we first created a color scale for both neutrals and the brand color (blue, of course). This gave us a flexible but consistent palette of colors to choose from, with appropriate contrast built in. Neutrals have a touch of blue too to avoid seeming washed out. We've simplified the style, in particular reducing reliance on background colors to differentiate sections within cards (a card essentially being an ipsBox, for those who are familiar with our framework). Instead, we use spacing, borders and appropriate typography to achieve visual separation. Brighter default colors Simplifying the UI by removing block backgrounds Improving typography We've felt our typography has been somewhat muddled for some time - with a mixture of sizes, weights and colors used depending on the particular context. The first step to improving it was to create a typography scale that we could refer to and implement, to ensure we remained consistent throughout the product. Our typography scale (The keen-eyed amongst you may also notice we've switched our default font to Inter. Inter is a fantastic open source font that is ideal for text on the web, and was recently added to the Google Web Fonts project making it super simple for us to incorporate it into our default theme.) We've been much more deliberate about applying type styles, especially for titles, ensuring that they are always visually distinct from surrounding text. We've done this through both color and weight. As a result, pages should instinctively feel more organized and logical than before. An example of improved typography, from the Downloads app Improved spacing (especially on mobile) We identified that spacing (padding and margins) needed some improvement. A lot of spacing values were arbitrary and inconsistent, leading to poor visual harmony across any given page. Most troubling of all, on mobile sizes we simply halved desktop padding values. While this was a reasonable approach in the days of phones with small screens, it has felt decidedly dated for some time. Phone screens are now typically larger and able to accommodate roomier UIs without appearing comical. In 4.5, we have done away with that approach, and the impact was immediate. Mobile sizes now get a much more pleasant interface, with elements having room to breathe. In addition, we've also made most cards full-width to provide additional breathing space for content. Posts can finally breathe on mobile There are numerous other tweaks across the product too: default spacing has been increased a little, data tables (e.g. topic listing) get extra vertical spacing, and spacing between elements has become more consistent. Improved grouping of related elements Prior to 4.5, most content areas existed inside cards. However, one notable exception to this was page headers and as a result, they could feel particularly disorganized, especially for users who had many controls in this part of the page (such as staff). To solve this problem, we've developed a new, standardized design for content item page headers, giving them their own cards and consistent button placement. Topic view header Some areas don't necessarily fit into the same design pattern above. In those areas, we've tweaked styling to suit the context, while still adhering to our overall aesthetic. Calendar header Messenger conversation header Reducing underutilized links/buttons Finally, another area we identified as needing improvement is the abundance of tools, made up of links and buttons, across pages. Many of these are only used occasionally and so would be better moved out of the main view to simplify the page. Two particular areas we focused on were share links and postbits (both forum posts and comments in other apps). Research shows social share links are used by a vanishingly small percentage of users, so even though they were at the bottom of the page, it was unnecessary to make them so prominent (given their eye-catching colors). To solve this, we've added a share link to the page header, with the social network links themselves in a popup menu. The result is ideal: sharing functionality is unobtrusive but obvious. Share links in content items Comment areas have also suffered from 'button creep' over the years. A typical comment will contain a report link, a share link, a quote link and multiquote button, reactions, plus IP address, checkbox, edit and options links for certain users. That is a lot of visual noise around the important part: the content. We've therefore simplified comment boxes as much as is reasonable. Reporting and sharing comments/posts is now available in the post options menu, as are any tools for the author/staff. Quoting and reacting are two primary interactions for users, so they of course retain their position in the control bar. Simpler postbits, even for staff Improving post states Posts/comments in Invision Community can have many states - sometimes more than one. Posts can be hidden/unapproved, popular, recommended, solved (new in 4.5!) or highlighted because of the author's group. It's always been a challenge to indicate these statuses well. In previous versions, we added a border but the most prominent indicator was a flag in the top-right corner of the post. This had three problems: Due to the lack of space (thanks to report/share links), showing more than one flag was difficult. Showing any flags on mobile was messy because of the space constraints. The meaning of the flags was not obvious, especially to new users. Group-highlighted posts had no flag, just a border, which made them even more difficult to understand. With the top-right corner of posts now tidied up and free from fluff, we were able to much more effectively use this space to indicate post statuses. In 4.5, posts and comments will show badges when they have a particular status, as well as a more attractive semi-transparent border. For group-highlighted posts, we show the group name instead (the colors of this highlight are still controllable via theme settings). A post with two states: group highlighted and popular This works much better on mobile too, where the status badges get the prominence they deserve: Mobile post statuses Modernizing the underlying code I wrote about the technical improvements behind the theme in a previous entry. If you're a theme designer or edit the theme for your own community, go and check it out now! Wrapping up As well as these large-scale concepts, you'll notice many other smaller enhancements as you start using the new theme. I've shown some snippets of pages in the screenshots above, but I've included some full-page views below so you can see the overall aesthetic and how these pieces fit together. Modernizing and refreshing our default theme has been needed for some time, but we view this as just a stepping stone to future work that will be reserved for a major version bump, and we're excited to figure out where we go next. Screenshots Desktop forum views (click to expand) Mobile forum views (click to expand) Activity streams & messenger (click to expand) View the full article
  13. If you've been around Invision Community for a while, you'll know our frontend default theme hasn't significantly evolved since the early days of 4.0. Indeed, the last significant refresh came with 4.2. With the upcoming release of 4.5, we wanted to revisit the default theme and give it a facelift for 2020, as well as make incremental improvements to the underlying codebase as a stepping stone to a bigger re-engineering in a future version. In this entry, I want to talk a little about some of the design decisions that went into building the new theme. Goals Redesigning for the sake of it is never a good idea, so we first laid out what we wanted to achieve: A brighter UI with more saturation & contrast and simpler overall color scheme Improved typography Better, more consistent, spacing around and between elements, especially on mobile Better logical grouping of sections of each page Reducing underutilized links/buttons on the page and finding alternative ways of making them available Improving how post states are displayed Modernizing and enhancing the underlying code that powers the default theme Let's talk a little about each of these. Brighter UI The most obvious change will be that our default colors are brighter and more saturated than before. Before making any changes, we first created a color scale for both neutrals and the brand color (blue, of course). This gave us a flexible but consistent palette of colors to choose from, with appropriate contrast built in. Neutrals have a touch of blue too to avoid seeming washed out. We've simplified the style, in particular reducing reliance on background colors to differentiate sections within cards (a card essentially being an ipsBox, for those who are familiar with our framework). Instead, we use spacing, borders and appropriate typography to achieve visual separation. Brighter default colors Simplifying the UI by removing block backgrounds Improving typography We've felt our typography has been somewhat muddled for some time - with a mixture of sizes, weights and colors used depending on the particular context. The first step to improving it was to create a typography scale that we could refer to and implement, to ensure we remained consistent throughout the product. Our typography scale (The keen-eyed amongst you may also notice we've switched our default font to Inter. Inter is a fantastic open source font that is ideal for text on the web, and was recently added to the Google Web Fonts project making it super simple for us to incorporate it into our default theme.) We've been much more deliberate about applying type styles, especially for titles, ensuring that they are always visually distinct from surrounding text. We've done this through both color and weight. As a result, pages should instinctively feel more organized and logical than before. An example of improved typography, from the Downloads app Improved spacing (especially on mobile) We identified that spacing (padding and margins) needed some improvement. A lot of spacing values were arbitrary and inconsistent, leading to poor visual harmony across any given page. Most troubling of all, on mobile sizes we simply halved desktop padding values. While this was a reasonable approach in the days of phones with small screens, it has felt decidedly dated for some time. Phone screens are now typically larger and able to accommodate roomier UIs without appearing comical. In 4.5, we have done away with that approach, and the impact was immediate. Mobile sizes now get a much more pleasant interface, with elements having room to breathe. In addition, we've also made most cards full-width to provide additional breathing space for content. Posts can finally breathe on mobile There are numerous other tweaks across the product too: default spacing has been increased a little, data tables (e.g. topic listing) get extra vertical spacing, and spacing between elements has become more consistent. Improved grouping of related elements Prior to 4.5, most content areas existed inside cards. However, one notable exception to this was page headers and as a result, they could feel particularly disorganized, especially for users who had many controls in this part of the page (such as staff). To solve this problem, we've developed a new, standardized design for content item page headers, giving them their own cards and consistent button placement. Topic view header Some areas don't necessarily fit into the same design pattern above. In those areas, we've tweaked styling to suit the context, while still adhering to our overall aesthetic. Calendar header Messenger conversation header Reducing underutilized links/buttons Finally, another area we identified as needing improvement is the abundance of tools, made up of links and buttons, across pages. Many of these are only used occasionally and so would be better moved out of the main view to simplify the page. Two particular areas we focused on were share links and postbits (both forum posts and comments in other apps). Research shows social share links are used by a vanishingly small percentage of users, so even though they were at the bottom of the page, it was unnecessary to make them so prominent (given their eye-catching colors). To solve this, we've added a share link to the page header, with the social network links themselves in a popup menu. The result is ideal: sharing functionality is unobtrusive but obvious. Share links in content items Comment areas have also suffered from 'button creep' over the years. A typical comment will contain a report link, a share link, a quote link and multiquote button, reactions, plus IP address, checkbox, edit and options links for certain users. That is a lot of visual noise around the important part: the content. We've therefore simplified comment boxes as much as is reasonable. Reporting and sharing comments/posts is now available in the post options menu, as are any tools for the author/staff. Quoting and reacting are two primary interactions for users, so they of course retain their position in the control bar. Simpler postbits, even for staff Improving post states Posts/comments in Invision Community can have many states - sometimes more than one. Posts can be hidden/unapproved, popular, recommended, solved (new in 4.5!) or highlighted because of the author's group. It's always been a challenge to indicate these statuses well. In previous versions, we added a border but the most prominent indicator was a flag in the top-right corner of the post. This had three problems: Due to the lack of space (thanks to report/share links), showing more than one flag was difficult. Showing any flags on mobile was messy because of the space constraints. The meaning of the flags was not obvious, especially to new users. Group-highlighted posts had no flag, just a border, which made them even more difficult to understand. With the top-right corner of posts now tidied up and free from fluff, we were able to much more effectively use this space to indicate post statuses. In 4.5, posts and comments will show badges when they have a particular status, as well as a more attractive semi-transparent border. For group-highlighted posts, we show the group name instead (the colors of this highlight are still controllable via theme settings). A post with two states: group highlighted and popular This works much better on mobile too, where the status badges get the prominence they deserve: Mobile post statuses Modernizing the underlying code I wrote about the technical improvements behind the theme in a previous entry. If you're a theme designer or edit the theme for your own community, go and check it out now! Wrapping up As well as these large-scale concepts, you'll notice many other smaller enhancements as you start using the new theme. I've shown some snippets of pages in the screenshots above, but I've included some full-page views below so you can see the overall aesthetic and how these pieces fit together. Modernizing and refreshing our default theme has been needed for some time, but we view this as just a stepping stone to future work that will be reserved for a major version bump, and we're excited to figure out where we go next. Screenshots Desktop forum views (click to expand) Mobile forum views (click to expand) Activity streams & messenger (click to expand) View the full article
  14. If you've been around Invision Community for a while, you'll know our frontend default theme hasn't significantly evolved since the early days of 4.0. Indeed, the last significant refresh came with 4.2. With the upcoming release of 4.5, we wanted to revisit the default theme and give it a facelift for 2020, as well as make incremental improvements to the underlying codebase as a stepping stone to a bigger re-engineering in a future version. Keep an eye out for our next blog for more on the facelift. In this entry, I want to go over some of the design and code-level changes we've implemented that will be of particular interest to third-party theme designers, or those building a custom theme for their community. IE11 Support Until now, we've supported IE11 as a 'B' browser - meaning we didn't aim for perfect support (especially visually), but did aim to make all functionality work, and we fixed IE11-specific issues if possible. As of 4.5, we no longer support IE11 in any way and Invision Community will not work well in that browser. By removing support for IE11, we are able to make use of newer CSS technologies which significantly eases development for us and third-party designers. I'll discuss some of those below. Combined theme settings We've combined a number of existing theme settings into one new setting. We've found that settings like poll_bar, step_background, rating_hover and so on are nearly always set to the same color - typically the site's main brand color. These settings have therefore been replaced with one new brand_color setting, which is used throughout the CSS in places where this primary color would be needed. This will simplify the early stages of theme development and make it easier to match branding in Invision Community. Front end colors Removing hardcoded colors While our theme settings have allowed community owners to change most colors, there were still many hardcoded in our CSS framework. These were typically neutral colors used for things like 'close' links, semi-transparent backgrounds and so on, but it was enough to make creating a dark theme an unrealistic prospect without an awful lot of effort (and kudos to those designers who have offered dark themes up until now!). In 4.5, we've removed hardcoded colors from our framework, and instead rely on colors already defined by theme settings. You can now, finally, create a dark theme just by editing the built-in theme settings. Type scale & {fontsize} tag While we've had fixed type-size classes (e.g. ipsType_normal) for a long time, in practice many elements had their own font sizes set. This leads to inconsistency and poor visual rhythm too. Another side effect is it was also tough to globally change the font size (such as for branding purposes, or to create a theme for visually-impaired users). To solve these problems, we first created a type scale; that is, a fixed number of sizes to choose from. A product the size of Invision Community does have need for a flexibility, so we settled on the following scale: x_small: 12; small: 13; medium: 14; base: 16; large: 18; x_large: 20; 2x_large: 24; 3x_large: 30; 4x_large: 36. All of these values are editable as theme settings, so each theme can adjust the type scale used. Our default CSS in 4.5 has been fully updated to put all type on this scale. To actually make use of these settings, we have added a new {fontsize} tag which accepts either a scale key, or a specific pixel size (for those occasional situations where a specific size is absolutely needed, e.g. icons). Why couldn't we just use {theme="x_small"}, or even CSS variables? To solve the problem of globally scaling text, we have also added a percentage-based scale setting that will save you from having to create your own type scale. The {fontsize} tag automatically applies the global scale to any values passed into it. Want text in your theme to be twice as big as default? Simply set the global type scale to 200% and the entire theme will reflect the change immediately. The new font size options Spacing scale The lack of a consistent spacing scale has led to some arbitrary values being used in any given situation, which again has had a negative impact on the visual harmony of our design. We've therefore implemented a 4px spacing scale (using CSS variables rather than theme settings this time) and applied across almost all padding/margin values. In time, we anticipate fully switching all measurement values to the scale. New CSS class families We have added a range of new spacing classes for padding and margins, allowing far more control over how these are applied, especially on different device sizes. Previously, ipsPad (15px) was simply halved on small screens - with no 'opt-out' short of adding specific CSS. We've felt this has been imprecise for some time, especially since mobile devices typically have larger screens in 2020 and don't need to be so tightly-spaced. ipsPad_all now replaces the existing ipsPad, and does not halve itself on small screens. Instead, there's a new responsive naming convention that allows you to apply specific padding on specific device sizes: ipsPad_all:double md:ipsPad_all sm:ipsPad_all:half In this arbitrary example, desktop size (the default) get double padding, medium (tablets) get regular padding and small (phones) get half padding. We've added similar classes for top, bottom, left and right padding, as well as horizontal, vertical and none (to removing all padding) shortcuts. For margins, the old ipsSpacer_* classes have been replaced with a new ipsMargin family that work exactly the same as the padding classes above, with the same range of flexibility. The old ipsPad/ipsSpacer classes will continue working as they did before for backwards compatibility, but should be considered deprecated from 4.5 onwards. We've also added a whole range of new ipsFlex classes, also with responsive controls (making it easy to have horizontal layouts on desktop and vertical layouts on mobile, for example), as well as a new ipsGap utility that automatically adds spacing between elements, without requiring manual :first-child/:last-child exclusions. CSS variables & calc() In 4.5, thanks to IE11 support ending, we're finally making use of CSS variables and calc() to make CSS more maintainable and easier to customize. A lot of repeating or often-customized styles - such as form field styles, message colors, card styles, border radii etc. - are now created as CSS variables, allowing theme designers to easily change styling in one place. Instead of magic numbers, we either stick to our spacing scale, or use calc() to avoid hardcoded numbers. The future The work we've done so far is just a 'first-pass'. We'll be pressing forward with modernization throughout the 4.5.* series and beyond with a view to reducing our footprint, improving our ability to maintain our CSS and, of course, making theming easier for our customers. View the full article
  15. If you've been around Invision Community for a while, you'll know our frontend default theme hasn't significantly evolved since the early days of 4.0. Indeed, the last significant refresh came with 4.2. With the upcoming release of 4.5, we wanted to revisit the default theme and give it a facelift for 2020, as well as make incremental improvements to the underlying codebase as a stepping stone to a bigger re-engineering in a future version. Keep an eye out for our next blog for more on the facelift. In this entry, I want to go over some of the design and code-level changes we've implemented that will be of particular interest to third-party theme designers, or those building a custom theme for their community. IE11 Support Until now, we've supported IE11 as a 'B' browser - meaning we didn't aim for perfect support (especially visually), but did aim to make all functionality work, and we fixed IE11-specific issues if possible. As of 4.5, we no longer support IE11 in any way and Invision Community will not work well in that browser. By removing support for IE11, we are able to make use of newer CSS technologies which significantly eases development for us and third-party designers. I'll discuss some of those below. Combined theme settings We've combined a number of existing theme settings into one new setting. We've found that settings like poll_bar, step_background, rating_hover and so on are nearly always set to the same color - typically the site's main brand color. These settings have therefore been replaced with one new brand_color setting, which is used throughout the CSS in places where this primary color would be needed. This will simplify the early stages of theme development and make it easier to match branding in Invision Community. Front end colors Removing hardcoded colors While our theme settings have allowed community owners to change most colors, there were still many hardcoded in our CSS framework. These were typically neutral colors used for things like 'close' links, semi-transparent backgrounds and so on, but it was enough to make creating a dark theme an unrealistic prospect without an awful lot of effort (and kudos to those designers who have offered dark themes up until now!). In 4.5, we've removed hardcoded colors from our framework, and instead rely on colors already defined by theme settings. You can now, finally, create a dark theme just by editing the built-in theme settings. Type scale & {fontsize} tag While we've had fixed type-size classes (e.g. ipsType_normal) for a long time, in practice many elements had their own font sizes set. This leads to inconsistency and poor visual rhythm too. Another side effect is it was also tough to globally change the font size (such as for branding purposes, or to create a theme for visually-impaired users). To solve these problems, we first created a type scale; that is, a fixed number of sizes to choose from. A product the size of Invision Community does have need for a flexibility, so we settled on the following scale: x_small: 12; small: 13; medium: 14; base: 16; large: 18; x_large: 20; 2x_large: 24; 3x_large: 30; 4x_large: 36. All of these values are editable as theme settings, so each theme can adjust the type scale used. Our default CSS in 4.5 has been fully updated to put all type on this scale. To actually make use of these settings, we have added a new {fontsize} tag which accepts either a scale key, or a specific pixel size (for those occasional situations where a specific size is absolutely needed, e.g. icons). Why couldn't we just use {theme="x_small"}, or even CSS variables? To solve the problem of globally scaling text, we have also added a percentage-based scale setting that will save you from having to create your own type scale. The {fontsize} tag automatically applies the global scale to any values passed into it. Want text in your theme to be twice as big as default? Simply set the global type scale to 200% and the entire theme will reflect the change immediately. The new font size options Spacing scale The lack of a consistent spacing scale has led to some arbitrary values being used in any given situation, which again has had a negative impact on the visual harmony of our design. We've therefore implemented a 4px spacing scale (using CSS variables rather than theme settings this time) and applied across almost all padding/margin values. In time, we anticipate fully switching all measurement values to the scale. New CSS class families We have added a range of new spacing classes for padding and margins, allowing far more control over how these are applied, especially on different device sizes. Previously, ipsPad (15px) was simply halved on small screens - with no 'opt-out' short of adding specific CSS. We've felt this has been imprecise for some time, especially since mobile devices typically have larger screens in 2020 and don't need to be so tightly-spaced. ipsPad_all now replaces the existing ipsPad, and does not halve itself on small screens. Instead, there's a new responsive naming convention that allows you to apply specific padding on specific device sizes: ipsPad_all:double md:ipsPad_all sm:ipsPad_all:half In this arbitrary example, desktop size (the default) get double padding, medium (tablets) get regular padding and small (phones) get half padding. We've added similar classes for top, bottom, left and right padding, as well as horizontal, vertical and none (to removing all padding) shortcuts. For margins, the old ipsSpacer_* classes have been replaced with a new ipsMargin family that work exactly the same as the padding classes above, with the same range of flexibility. The old ipsPad/ipsSpacer classes will continue working as they did before for backwards compatibility, but should be considered deprecated from 4.5 onwards. We've also added a whole range of new ipsFlex classes, also with responsive controls (making it easy to have horizontal layouts on desktop and vertical layouts on mobile, for example), as well as a new ipsGap utility that automatically adds spacing between elements, without requiring manual :first-child/:last-child exclusions. CSS variables & calc() In 4.5, thanks to IE11 support ending, we're finally making use of CSS variables and calc() to make CSS more maintainable and easier to customize. A lot of repeating or often-customized styles - such as form field styles, message colors, card styles, border radii etc. - are now created as CSS variables, allowing theme designers to easily change styling in one place. Instead of magic numbers, we either stick to our spacing scale, or use calc() to avoid hardcoded numbers. The future The work we've done so far is just a 'first-pass'. We'll be pressing forward with modernization throughout the 4.5.* series and beyond with a view to reducing our footprint, improving our ability to maintain our CSS and, of course, making theming easier for our customers. View the full article
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use Privacy Policy