Bevry is creating Free Open-Source Software
1

patron

$1
per month
Hi, we are Bevry an open-company and community dedicated to empowering developers everywhere, we do this through developing free open-source solutions that help streamline your everyday workflows, we'd like to be able to take this further and support our founder and community to work on this full-time. To do that, we need your help.

Why help? We've created over 200 open-source projects between the BevryDocPad, and History.js communities. Together they make up some of the top 100 JavaScript projects in the world.

How we accomplish this? When our workload was just that of a side-project's demands, it was possible to accomplish this through the occasional consulting arrangement, however as our eco-system has grown dramatically, it now requires a paid workload in order to be maintained sustainably.

This is where you come in. By having yourself or your company donate to our Patreon page, we will be able to actively maintain our ecosystem. Which will make your job easier, and that of all the developers who consume our packages. A win-win for everyone.

So what will your donations get you? Here are some things on our roadmap.


Migration from CoffeeScript to ES6+ for radical Performance improvements and increased Accessibility

We originally switched to CoffeeScript in 2011 for the features and consistency it provided over JavaScript in that time. In 2015, JavaScript has come a long way with ES6/ES2015/ES6+ and now contains those benefits that CoffeeScript in 2011 provided, allowing us to remove the tediousness of CoffeeScript and embrace universal JavaScript once more.

Thanks to your support, we recently converted TaskGroup, a foundational project of ours, and have seen these two major a benefits of this conversion.

Performance: We have accomplished a steady improvement of 13 seconds down to 3 seconds for running 10,000 tasks, which is a 75% reduction and is just 1/4 of the time it took previously - a massive improvement. We are expecting to see similar performance gains for most of our projects due to the inefficiency of CoffeeScript's compiled code compared to the source and babel compiled ES6+ code, as well as more control over performance through better profiling and minimal code conversion. As DocPad depends on a lot of our other modules, such conversions and optimisations should bring similar performance improvements to DocPad - something that took a minute, should reduce to only 15 seconds. Details on how these performance enhancements are actualised are here.

Accessibility: Moving from coffeelint to eslint, then from biscotto to jsdoc has provided better tooling for developing for providing consistent styling and error prevention as well as better tooling for documentation, which both increases accessibility to non-owners. For instance, compare our old documentation to our new documentation and you'll see the great accomplishments in API browseability and detail now possible.
Eventually we will also see greater adoption and use of our projects through the more popular tooling and language making the projects easier to contribute to and incorporate, which should lead to increased third party support and contribution to the projects furthering increasing adoption and quality.

All in all, the conversion from CoffeeScript to ES6+ started with ~60 Bevry repositories (now 13) and ~65 DocPad repositories (now 57). Converting the remaining should take about a month to accomplish for the different Bevry projects and DocPad plugins, and about a month for the DocPad core. This should be possible while maintaining compatibility with DocPad version 6, being only a series of incremental minor version bumps for DocPad.


DocPad v7

As demands for DocPad increase, technologies upgrade, and more people use it for bigger and bigger projects, it's evident that we need to keep up pace with these demands in new ways. We know what we need to do.

Break the DocPad Core into Smaller Modules to Increase Maintainability.
Currently the DocPad core, while enabling a powerful plugin eco-system, should also be modularised. Things like the server is still based on Express.js v3, whereas v5 is around the corner. Abstracting out things like the server functionality, will allow us to have a backwards compatible plugin for express3 as well as one for new versions of express and even other server software. The same applies for our watching library, and other parts of the core. By breaking apart the core, users of DocPad will be able to mix and match the right foundations for their project, while at the same time, maintainers of DocPad will be able to work with smaller modules, rather than having to learn the entire core infrastructure. A win for everyone.

Abstract out the powerful DocPad Plugin System into its own Independent Plugin System.
This means taking the powerful and time-tested DocPad Plugin architecture, and abstracting it out into an independent system that can be used for any project to implement it's own plugin system easily. Existing functionality allows plugins to listen to events that can even be asynchronous which are executed safely an in prioritised order either in parallel or serially by the mediator's choosing. New features will include semantic versioning support for plugins, as well as automatic installation of the correct plugin version for your existing peer dependencies.

Make DocPad Super Fast.
DocPad while it brings magnificent power, this power can also be a source of slow downs. In short with the worst case scenario, DocPad can spend hours rendering 10,000 documents — we hope to bring that down to less than a minute. This is due to two major paint points. The first and most common is having a layout that is used on every page which includes a dynamic content listing? Well that requires all pages that use that layout to regenerate when a document changes to ensure the content listing on each page remains correct with the changes information — this sounds fair, but what if the content that changed isn't actually used in that content listing, well everything is still regenerated, we will fix that. The other and less common, is when you have a huge database size (either of a few 100MB+ sized documents, or thousands of smaller documents) will force DocPad to occupy a large memory footprint that must be reloaded and discarded on each shutdown and opening of DocPad. We will fix this by providing the option of using a persistent database. 


All in all.

We are thankful for all donations, big or small, as they will all add up to making a difference, be it covering our bills, funding development, or expanding our mission to new initiatives. See the rewards section for what can be possible. Thank you.

- Benjamin, Bevry's Founder.


== Expense Breakdown ==

Discourse Forum Hosting
* €2.99/month (~$3.50USD/month) Scaleway Starter VC1S x1

1Password Teams
* $5USD/month

Google Domains
* $12USD/year balupton.com
* $20USD/year bevry.me
* $12USD/year docpad.org
* $30USD/year jordanbpeterson.community
* $20USD/year lupton.cc
* $12USD/year startuphostel.org
* $12USD/year staticsitegenerators.net

iCloud Storage
* $14.99AUD/month (~$12USD/month) 1TB

Software (screenflow, vwmare, etc)
* $20USD/month average

Hardware (laptops, hard drives, etc)
* $1000USD/year average

Education (books, seminars, etc)
* $200USD/year average
Tiers
User Sponsorship ~$1/week
$5 or more per month 0 patrons
Reward not yet implemented: A visible thank you. Your name included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Freelancer Sponsorship ~$1/day
$30 or more per month 0 patrons
Reward not yet implemented: A linkable thank you. Your name and website URL included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Business Sponsorship ~$25/day
$750 or more per month 0 patrons
Reward not yet implemented: Exposure for your brand as an open-source supporter. Your name, website URL, and tagline included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Premium Sponsorship ~$50/day
$1,500 or more per month 0 patrons
Reward not yet implemented: Premium exposure for your band as an open-source supporter. Your name, website URL, tagline, and logo included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Platinum Sponsorship ~$100/day
$3,000 or more per month 0 patrons
Reward not yet implemented: Maximum exposure for your brand as an open-source sponsor. Your name, website URL, tagline, and logo included as a sponsor on all our websites and inside all touched project's README files, and explicit mentions in the footer of every website page and in all blog posts and videos published by us (at least 1/week). Valid while you're donating at this reward level.
Goals
$1 of $1,000 per month
Wow, that's nice! This will mean being able to sustainably contribute a single casual workload to our initiatives, most likely just performing routine maintenance, bug fixes, and version updates.
1 of 4
Hi, we are Bevry an open-company and community dedicated to empowering developers everywhere, we do this through developing free open-source solutions that help streamline your everyday workflows, we'd like to be able to take this further and support our founder and community to work on this full-time. To do that, we need your help.

Why help? We've created over 200 open-source projects between the BevryDocPad, and History.js communities. Together they make up some of the top 100 JavaScript projects in the world.

How we accomplish this? When our workload was just that of a side-project's demands, it was possible to accomplish this through the occasional consulting arrangement, however as our eco-system has grown dramatically, it now requires a paid workload in order to be maintained sustainably.

This is where you come in. By having yourself or your company donate to our Patreon page, we will be able to actively maintain our ecosystem. Which will make your job easier, and that of all the developers who consume our packages. A win-win for everyone.

So what will your donations get you? Here are some things on our roadmap.


Migration from CoffeeScript to ES6+ for radical Performance improvements and increased Accessibility

We originally switched to CoffeeScript in 2011 for the features and consistency it provided over JavaScript in that time. In 2015, JavaScript has come a long way with ES6/ES2015/ES6+ and now contains those benefits that CoffeeScript in 2011 provided, allowing us to remove the tediousness of CoffeeScript and embrace universal JavaScript once more.

Thanks to your support, we recently converted TaskGroup, a foundational project of ours, and have seen these two major a benefits of this conversion.

Performance: We have accomplished a steady improvement of 13 seconds down to 3 seconds for running 10,000 tasks, which is a 75% reduction and is just 1/4 of the time it took previously - a massive improvement. We are expecting to see similar performance gains for most of our projects due to the inefficiency of CoffeeScript's compiled code compared to the source and babel compiled ES6+ code, as well as more control over performance through better profiling and minimal code conversion. As DocPad depends on a lot of our other modules, such conversions and optimisations should bring similar performance improvements to DocPad - something that took a minute, should reduce to only 15 seconds. Details on how these performance enhancements are actualised are here.

Accessibility: Moving from coffeelint to eslint, then from biscotto to jsdoc has provided better tooling for developing for providing consistent styling and error prevention as well as better tooling for documentation, which both increases accessibility to non-owners. For instance, compare our old documentation to our new documentation and you'll see the great accomplishments in API browseability and detail now possible.
Eventually we will also see greater adoption and use of our projects through the more popular tooling and language making the projects easier to contribute to and incorporate, which should lead to increased third party support and contribution to the projects furthering increasing adoption and quality.

All in all, the conversion from CoffeeScript to ES6+ started with ~60 Bevry repositories (now 13) and ~65 DocPad repositories (now 57). Converting the remaining should take about a month to accomplish for the different Bevry projects and DocPad plugins, and about a month for the DocPad core. This should be possible while maintaining compatibility with DocPad version 6, being only a series of incremental minor version bumps for DocPad.


DocPad v7

As demands for DocPad increase, technologies upgrade, and more people use it for bigger and bigger projects, it's evident that we need to keep up pace with these demands in new ways. We know what we need to do.

Break the DocPad Core into Smaller Modules to Increase Maintainability.
Currently the DocPad core, while enabling a powerful plugin eco-system, should also be modularised. Things like the server is still based on Express.js v3, whereas v5 is around the corner. Abstracting out things like the server functionality, will allow us to have a backwards compatible plugin for express3 as well as one for new versions of express and even other server software. The same applies for our watching library, and other parts of the core. By breaking apart the core, users of DocPad will be able to mix and match the right foundations for their project, while at the same time, maintainers of DocPad will be able to work with smaller modules, rather than having to learn the entire core infrastructure. A win for everyone.

Abstract out the powerful DocPad Plugin System into its own Independent Plugin System.
This means taking the powerful and time-tested DocPad Plugin architecture, and abstracting it out into an independent system that can be used for any project to implement it's own plugin system easily. Existing functionality allows plugins to listen to events that can even be asynchronous which are executed safely an in prioritised order either in parallel or serially by the mediator's choosing. New features will include semantic versioning support for plugins, as well as automatic installation of the correct plugin version for your existing peer dependencies.

Make DocPad Super Fast.
DocPad while it brings magnificent power, this power can also be a source of slow downs. In short with the worst case scenario, DocPad can spend hours rendering 10,000 documents — we hope to bring that down to less than a minute. This is due to two major paint points. The first and most common is having a layout that is used on every page which includes a dynamic content listing? Well that requires all pages that use that layout to regenerate when a document changes to ensure the content listing on each page remains correct with the changes information — this sounds fair, but what if the content that changed isn't actually used in that content listing, well everything is still regenerated, we will fix that. The other and less common, is when you have a huge database size (either of a few 100MB+ sized documents, or thousands of smaller documents) will force DocPad to occupy a large memory footprint that must be reloaded and discarded on each shutdown and opening of DocPad. We will fix this by providing the option of using a persistent database. 


All in all.

We are thankful for all donations, big or small, as they will all add up to making a difference, be it covering our bills, funding development, or expanding our mission to new initiatives. See the rewards section for what can be possible. Thank you.

- Benjamin, Bevry's Founder.


== Expense Breakdown ==

Discourse Forum Hosting
* €2.99/month (~$3.50USD/month) Scaleway Starter VC1S x1

1Password Teams
* $5USD/month

Google Domains
* $12USD/year balupton.com
* $20USD/year bevry.me
* $12USD/year docpad.org
* $30USD/year jordanbpeterson.community
* $20USD/year lupton.cc
* $12USD/year startuphostel.org
* $12USD/year staticsitegenerators.net

iCloud Storage
* $14.99AUD/month (~$12USD/month) 1TB

Software (screenflow, vwmare, etc)
* $20USD/month average

Hardware (laptops, hard drives, etc)
* $1000USD/year average

Education (books, seminars, etc)
* $200USD/year average

Recent posts by Bevry

Tiers
User Sponsorship ~$1/week
$5 or more per month 0 patrons
Reward not yet implemented: A visible thank you. Your name included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Freelancer Sponsorship ~$1/day
$30 or more per month 0 patrons
Reward not yet implemented: A linkable thank you. Your name and website URL included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Business Sponsorship ~$25/day
$750 or more per month 0 patrons
Reward not yet implemented: Exposure for your brand as an open-source supporter. Your name, website URL, and tagline included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Premium Sponsorship ~$50/day
$1,500 or more per month 0 patrons
Reward not yet implemented: Premium exposure for your band as an open-source supporter. Your name, website URL, tagline, and logo included as a sponsor on all our websites and inside all touched project's README files. Valid while you're donating at this reward level.
Platinum Sponsorship ~$100/day
$3,000 or more per month 0 patrons
Reward not yet implemented: Maximum exposure for your brand as an open-source sponsor. Your name, website URL, tagline, and logo included as a sponsor on all our websites and inside all touched project's README files, and explicit mentions in the footer of every website page and in all blog posts and videos published by us (at least 1/week). Valid while you're donating at this reward level.