<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Countr Blog</title>
        <link>https://countr.xyz/blog</link>
        <description>The Countr Blog, where we announce all new about Countr.</description>
        <lastBuildDate>Thu, 20 Jul 2023 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <copyright>Copyright © 2026 Promise Solutions</copyright>
        <item>
            <title><![CDATA[New updates this summer!]]></title>
            <link>https://countr.xyz/blog/2023/07/20/updates-this-summer</link>
            <guid>https://countr.xyz/blog/2023/07/20/updates-this-summer</guid>
            <pubDate>Thu, 20 Jul 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[We're only halfway into the summer, but there have already been a lot of changes to Countr! We're excited to share these changes with you and hope that they enhance your counting experience.]]></description>
            <content:encoded><![CDATA[<p>We're only halfway into the summer, but there have already been a lot of changes to Countr! We're excited to share these changes with you and hope that they enhance your counting experience.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="the-new-scores-fetch-command">The new <code>/scores fetch</code> command<a href="https://countr.xyz/blog/2023/07/20/updates-this-summer#the-new-scores-fetch-command" class="hash-link" aria-label="Direct link to the-new-scores-fetch-command" title="Direct link to the-new-scores-fetch-command" translate="no">​</a></h2>
<p>This feature has been requested <a href="https://github.com/countr/countr/issues/16" target="_blank" rel="noopener noreferrer" class="">since January 2020</a>, and we're excited to finally make it available. With the <code>/scores fetch</code> command, you can easily count up all the scores in your counting channel. This feature is perfect for servers that would like to move over to Countr and are not able to export scores from their previous system.</p>
<p>If you want to try it out then go ahead! It responds with a file that you can import later through <code>/data import scores</code>. The fetch command will not modify the database directly, so you can safely try it out without worrying about overwriting your current scores.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="the-new-reaction-action">The new reaction action<a href="https://countr.xyz/blog/2023/07/20/updates-this-summer#the-new-reaction-action" class="hash-link" aria-label="Direct link to The new reaction action" title="Direct link to The new reaction action" translate="no">​</a></h2>
<p>This action has been <em>highly</em> requested multiple times, and it's finally here. With the new reaction action, you can react to a count with a Discord emoji or a custom server emoji. For example, you can react with a cross to cross out a failed count, or react with a checkmark to successful counts. Another idea is to add a "nice!" server emoji reaction to counts ending in 69.</p>
<p>You can easily combine reactions as well, so if you want to spell out "nice" using reactions, you can do that!</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="the-new-nodelete-module">The new <code>nodelete</code> module<a href="https://countr.xyz/blog/2023/07/20/updates-this-summer#the-new-nodelete-module" class="hash-link" aria-label="Direct link to the-new-nodelete-module" title="Direct link to the-new-nodelete-module" translate="no">​</a></h2>
<p>This module has been requested <a href="https://github.com/countr/countr/issues/138" target="_blank" rel="noopener noreferrer" class="">since October 2021</a>! With the "nodelete" module, failed counts will no longer be deleted from the counting channel. This means you can have a normal conversation in your counting channel with this module enabled. Combined with the <a href="https://countr.xyz/blog/2023/07/20/updates-this-summer#the-new-reaction-action" class="">new react action</a>, you can also react with a cross for failed counts.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="you-can-now-run-a-random-flow-action">You can now run a random flow action<a href="https://countr.xyz/blog/2023/07/20/updates-this-summer#you-can-now-run-a-random-flow-action" class="hash-link" aria-label="Direct link to You can now run a random flow action" title="Direct link to You can now run a random flow action" translate="no">​</a></h2>
<p>This has been requested <a href="https://github.com/countr/countr/issues/660" target="_blank" rel="noopener noreferrer" class="">since January this year</a>. When creating or editing a flow, you will now be able to toggle "Randomize action" on the last page of the flow editor. This will make Countr pick a random action from the flow, and run that action instead of all of them.</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
            <category>changelog</category>
        </item>
        <item>
            <title><![CDATA[How AI Improved Our Documentation]]></title>
            <link>https://countr.xyz/blog/2023/07/17/documentation-revamped-with-ai</link>
            <guid>https://countr.xyz/blog/2023/07/17/documentation-revamped-with-ai</guid>
            <pubDate>Mon, 17 Jul 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[At Promise Solutions, we're always looking for ways to improve Countr. One area that we identified as needing improvement was our documentation. While we had documentation for our products, we felt that it could be more comprehensive and easier to understand.]]></description>
            <content:encoded><![CDATA[<p>At Promise Solutions, we're always looking for ways to improve Countr. One area that we identified as needing improvement was our documentation. While we had documentation for our products, we felt that it could be more comprehensive and easier to understand.</p>
<p>To address this issue, we decided to use AI to help us recreate and improve our documentation. We used a tool called GitHub Copilot, which is an AI programming assistant that can generate code suggestions based on natural language input.</p>
<p>We started by selecting a few pages from our existing documentation that we wanted to improve. We then used GitHub Copilot to regenerate new content for those pages. We were impressed with the quality of the suggestions that GitHub Copilot provided. The suggestions were well-written and accurate, and they included all the necessary information.</p>
<p>We then reviewed the suggestions and made any necessary edits to ensure that the content was accurate and easy to understand. We also added any additional information that we felt was necessary. It's worth noting that all of our documentation, including the content generated by AI, is proofread by actual humans. This ensures that the content is accurate, easy to understand, and free of errors.</p>
<p>The result was documentation that was more comprehensive and easier to understand. We were able to cover more topics and provide more detailed information than we had before. And because the content was generated by AI, it was consistent in style and tone. Overall, using AI to improve our documentation was a great success. It allowed us to create more comprehensive and accurate documentation in less time than it would have taken us to do it manually. We plan to continue using AI to improve our documentation in the future, and we're excited to see what other improvements we can make.</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
            <category>documentation</category>
        </item>
        <item>
            <title><![CDATA[Countr is now counting in 100,000 guilds]]></title>
            <link>https://countr.xyz/blog/2022/12/25/100k-guilds</link>
            <guid>https://countr.xyz/blog/2022/12/25/100k-guilds</guid>
            <pubDate>Sun, 25 Dec 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[We're proud to announce that Countr is now counting in 100,000 guilds! We've come a long way since we first launched Countr back in July 2018, and we're excited to see what the future holds. We'd like to thank everyone who has been using Countr, and we hope you continue to enjoy Countr for years to come!]]></description>
            <content:encoded><![CDATA[<p>We're proud to announce that Countr is now counting in 100,000 guilds! We've come a long way since we first launched Countr back in July 2018, and we're excited to see what the future holds. We'd like to thank everyone who has been using Countr, and we hope you continue to enjoy Countr for years to come!</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="whats-next">What's next?<a href="https://countr.xyz/blog/2022/12/25/100k-guilds#whats-next" class="hash-link" aria-label="Direct link to What's next?" title="Direct link to What's next?" translate="no">​</a></h2>
<p>As the holidays are coming up, we're going to be taking a break from development for a few weeks. We'll be back in the new year with some exciting new features, and we can't wait to share them with you all. Our plans for 2023 are to focus more on the user experience, and to make Countr more accessible to everyone!</p>
<p>You can check out our <a href="https://github.com/countr/countr/issues" target="_blank" rel="noopener noreferrer" class="">Issue Tracker</a> to see what we're working on. If you have any suggestions, feel free to add a new issue - we're always looking for new ideas!</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="server-upgrade">Server upgrade<a href="https://countr.xyz/blog/2022/12/25/100k-guilds#server-upgrade" class="hash-link" aria-label="Direct link to Server upgrade" title="Direct link to Server upgrade" translate="no">​</a></h2>
<p>We now have a new server! This one's beefy, and we're going to cover more of the server over on the new <a href="https://promise.solutions/blog" target="_blank" rel="noopener noreferrer" class="">Promise Solutions blog</a>. I'm also going to be writing up on the infrastructure of the server, if anyone is curious of course. Stay tuned!</p>
<p>Happy holidays everyone, and we'll see you in the new year! 🎉</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
            <category>milestone</category>
        </item>
        <item>
            <title><![CDATA[Position roles are finally here!]]></title>
            <link>https://countr.xyz/blog/2022/10/14/position-roles-are-finally-here</link>
            <guid>https://countr.xyz/blog/2022/10/14/position-roles-are-finally-here</guid>
            <pubDate>Fri, 14 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[It's been requested for a while now, and we're finally ready to release it. Position roles are a new type of role that is given to someone based on their position on the leaderboard. For example, if you have a role called "Top Counter" then this can be given to the person in first place on the leaderboard.]]></description>
            <content:encoded><![CDATA[<p>It's been requested for a while now, and we're finally ready to release it. Position roles are a new type of role that is given to someone based on their position on the leaderboard. For example, if you have a role called "Top Counter" then this can be given to the person in first place on the leaderboard.</p>
<p>It's still in BETA so let us know if you have any issues!</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="quick-reminder">Quick reminder<a href="https://countr.xyz/blog/2022/10/14/position-roles-are-finally-here#quick-reminder" class="hash-link" aria-label="Direct link to Quick reminder" title="Direct link to Quick reminder" translate="no">​</a></h2>
<p>Hacktoberfest is still ongoing! Check out <a class="" href="https://countr.xyz/blog/2022/10/03/happy-hacktoberfest">this blog post</a> for more details on how to participate!</p>
<p>Happy hacktoberfest and happy counting!</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
        </item>
        <item>
            <title><![CDATA[Happy Hacktoberfest!]]></title>
            <link>https://countr.xyz/blog/2022/10/03/happy-hacktoberfest</link>
            <guid>https://countr.xyz/blog/2022/10/03/happy-hacktoberfest</guid>
            <pubDate>Mon, 03 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[We're participating in Hacktoberfest this year! If you're not familiar with it, it's a month-long celebration of open source software. You can read more about it here.]]></description>
            <content:encoded><![CDATA[<p>We're participating in Hacktoberfest this year! If you're not familiar with it, it's a month-long celebration of open source software. You can read more about it <a href="https://hacktoberfest.digitalocean.com/" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<p>We're looking for contributors to help us with our <a href="https://github.com/countr" target="_blank" rel="noopener noreferrer" class="">GitHub repositories</a> and we'll be giving away some Discord Nitro codes to the best contributions! We'll be giving away 3 codes, for the best 3 contributions.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="how-to-contribute">How to contribute<a href="https://countr.xyz/blog/2022/10/03/happy-hacktoberfest#how-to-contribute" class="hash-link" aria-label="Direct link to How to contribute" title="Direct link to How to contribute" translate="no">​</a></h2>
<p>It can be some code changes, some documentation changes, some bug fixes, anything that helps us improve our projects! You can find our repositories <a href="https://github.com/orgs/countr/repositories" target="_blank" rel="noopener noreferrer" class="">here</a>. If you're not sure where to start, you can check out our <a href="https://github.com/search?q=org%3Acountr+is%3Aissue+is%3Aopen+-label%3Adependencies" target="_blank" rel="noopener noreferrer" class="">issues</a> and see if there's anything you can help with. If you're not sure how to contribute, you can also ask us on our <a href="https://promise.solutions/discord" target="_blank" rel="noopener noreferrer" class="">Discord server</a> and we'll be happy to help you out!</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="quality-of-contributions">Quality of contributions<a href="https://countr.xyz/blog/2022/10/03/happy-hacktoberfest#quality-of-contributions" class="hash-link" aria-label="Direct link to Quality of contributions" title="Direct link to Quality of contributions" translate="no">​</a></h2>
<p>We expect good quality of contributions, and the "top three" contributors are not necessarily the ones who contributed the most, but the ones who contributed the best. We'll be looking at the quality of the code, the quality of the documentation, the quality of the bug report, etc.</p>
<p>Other than that, happy hacktoberfest and happy counting!</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>hacktoberfest</category>
        </item>
        <item>
            <title><![CDATA[Unique role action]]></title>
            <link>https://countr.xyz/blog/2022/10/03/unique-role</link>
            <guid>https://countr.xyz/blog/2022/10/03/unique-role</guid>
            <pubDate>Mon, 03 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[We've gotten multiple reports about "removing all users from a role" being quite buggy and not working as expected. Users that want this feature usually want to remove the previous user from a role to give it to the new user, so ... we just made it its own action.]]></description>
            <content:encoded><![CDATA[<p>We've gotten multiple reports about "removing all users from a role" being quite buggy and not working as expected. Users that want this feature usually want to remove the previous user from a role to give it to the new user, so ... we just made it its own action.</p>
<p>To cut the long story short, we've added a new action called "Unique role" that will remove the previous user from the role, and add it to the new user. It's a lot more reliable than the "Remove all users from role" action, and it's a lot less reliant on cache (which is why it was buggy in the first place).</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="remove-everyone-from-a-role-action-is-deprecated">"Remove everyone from a role" action is deprecated<a href="https://countr.xyz/blog/2022/10/03/unique-role#remove-everyone-from-a-role-action-is-deprecated" class="hash-link" aria-label="Direct link to &quot;Remove everyone from a role&quot; action is deprecated" title="Direct link to &quot;Remove everyone from a role&quot; action is deprecated" translate="no">​</a></h2>
<p>We will remove this action in the future, so please use the new "Unique role" action instead. We will keep the old action around for a while, but it will be removed in the future.</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
        </item>
        <item>
            <title><![CDATA[Quick status update]]></title>
            <link>https://countr.xyz/blog/2022/08/09/quick-status-update</link>
            <guid>https://countr.xyz/blog/2022/08/09/quick-status-update</guid>
            <pubDate>Tue, 09 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[There's currently some issues with interactions, we're working to identify the problem and solve it. It doesn't happen in our test environment though, it's quite rare and happens after some time, so we've increased our logging capabilities on the bot and, hopefully, we'll be able to identify it as soon as possible.]]></description>
            <content:encoded><![CDATA[<p>There's currently some issues with interactions, we're working to identify the problem and solve it. It doesn't happen in our test environment though, it's quite rare and happens after some time, so we've increased our logging capabilities on the bot and, hopefully, we'll be able to identify it as soon as possible.</p>
<p>Thanks for being patient, we'll keep you posted! If you haven't seen yet, check out <a class="" href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement">this blog post</a> for more details on our big upgrade we did last week!</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
        </item>
        <item>
            <title><![CDATA[The rewrite is here!]]></title>
            <link>https://countr.xyz/blog/2022/08/06/the-rewrite-is-here</link>
            <guid>https://countr.xyz/blog/2022/08/06/the-rewrite-is-here</guid>
            <pubDate>Sat, 06 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[This is a follow-up to our previous blog post, we're just announcing that the rewrite is here! Check out the previous blog post for more details about the changes.]]></description>
            <content:encoded><![CDATA[<p>This is a follow-up to <a class="" href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement">our previous blog post</a>, we're just announcing that the rewrite is here! Check out the previous blog post for more details about the changes.</p>
<p>There's a lot of changes, which also means a lot of things might've been missed or broken in the update, so please let us know in <a href="https://promise.solutions/discord" target="_blank" rel="noopener noreferrer" class="">the support server</a> if you see anything!</p>
<div></div>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>updates</category>
        </item>
        <item>
            <title><![CDATA[Countr Upgrade + Maintenance Announcement]]></title>
            <link>https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement</link>
            <guid>https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement</guid>
            <pubDate>Wed, 03 Aug 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[We are doing a massive upgrade on Countr that we've planned for way over a year now. It's finally here. Global maintenance will take place on August 5th until August 7th, and will affect all services including Countr, Countr Premium, Website and Status page. We will most likely not use all three days for everything, and we hope to have the bot up on the 5th, however it might take some time to get everything up and running.]]></description>
            <content:encoded><![CDATA[<p>We are doing a massive upgrade on Countr that we've planned for way over a year now. It's finally here. Global maintenance will take place on August 5th until August 7th, and will affect all services including Countr, Countr Premium, Website and Status page. We will most likely not use all three days for everything, and we hope to have the bot up on the 5th, however it might take some time to get everything up and running.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="visible-changes">Visible changes<a href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement#visible-changes" class="hash-link" aria-label="Direct link to Visible changes" title="Direct link to Visible changes" translate="no">​</a></h2>
<ul>
<li class=""><strong>Slash commands:</strong> We're finally moving over to slash commands! There will be some @mention commands, but these are mostly for the support team of the bot to assist you if you need help.</li>
<li class=""><strong>Stability improvements:</strong> The uptime and stability are improved as it's now using the latest Discord.js version. It is now also a lot more scalable and easier to upgrade in the future.<!-- -->
<ul>
<li class=""><em>Technical explanation: our approach before was to spawn a worker thread per shard, but we used this way before it scaled to 120 shards. We will now spawn 12 clusters (same as 12 workers) with 10 shards each, and we can easily scale this in the future. It's also now dockerized, so if one cluster crashes then it will auto-restart, versus using pm2 that just restarts all 120 worker shards i.e,. a very nice improvement we should've done a long time ago.</em></li>
</ul>
</li>
<li class=""><strong>Multiple counting channels + Threads:</strong> You can now make multiple counting channels for your server! You can also now use threads for your counting channels!</li>
<li class=""><strong>Support for other number systems:</strong> Up until now you've only been able to count with the decimal counting system. We now have a lot more ways to count! <a href="https://a6107495.countr.pages.dev/docs/category/counting-systems" target="_blank" rel="noopener noreferrer" class="">Check it out!</a></li>
<li class=""><strong>Flow creator/editor improvements:</strong> The flow editor previously created a channel where you can create a flow. We've rewritten it using slash commands and interactions instead. <a href="https://a6107495.countr.pages.dev/docs/features/flows" target="_blank" rel="noopener noreferrer" class="">Take a sneak peek!</a></li>
<li class=""><strong>Export and import flows:</strong> You can also now export your flow configuration and import it in another server or share it with others!</li>
</ul>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="countr-rewritten-for-the-third-time">Countr rewritten for the third time<a href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement#countr-rewritten-for-the-third-time" class="hash-link" aria-label="Direct link to Countr rewritten for the third time" title="Direct link to Countr rewritten for the third time" translate="no">​</a></h2>
<p>I remember back in the day when Countr used discord.js version 11 and I was starting to make a rewrite to support version 12. The week after we launched our new version, the discord.js team launched version 13. That was quite frustrating to see.</p>
<p>So, we kept going with version 12 until it eventually was going to be unsupported soon. I started rewriting it in version 13, this time in TypeScript so it's much easier to maintain and also upgrade to future upgrades.</p>
<p>The code was almost done, but then - even more frustratingly than the last time - Discord.js launched a development version of version 14.</p>
<p>I decided to scrap the code and rewrite it again. I also had better ideas for the code anyways so I would either have to rewrite every file in the project, or just start from scratch again. I am quite happy with how this code turned out though, and they also released version 14 two weeks ago which we successfully upgraded to.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="website-overhaul">Website overhaul<a href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement#website-overhaul" class="hash-link" aria-label="Direct link to Website overhaul" title="Direct link to Website overhaul" translate="no">​</a></h2>
<p>We've changed up our website and made it easier to maintain and also moved documentation here as well, instead of having two separate websites.</p>
<p>We're also going to make changes to the status page, and will open-source this code as well.</p>
<h2 class="anchor anchorTargetHideOnScrollNavbar_gVWj" id="still-in-beta">Still in BETA<a href="https://countr.xyz/blog/2022/08/03/countr-upgrade-maintenance-announcement#still-in-beta" class="hash-link" aria-label="Direct link to Still in BETA" title="Direct link to Still in BETA" translate="no">​</a></h2>
<p>There will most likely be bugs and issues with the bot at first, please <a href="https://promise.solutions/discord" target="_blank" rel="noopener noreferrer" class="">join the support server</a> and let us know about them so we can fix them! Thank you :)</p>]]></content:encoded>
            <author>me@promise.solutions (Promise)</author>
            <category>changelog</category>
            <category>maintenance</category>
        </item>
    </channel>
</rss>