Open source projects are fun because they're collaborative and instantly gratifying. As a codebase expands, the project takes shape. Making a funding plan often seems like just one more bleak necessity that distracts from the fun parts of shaping code and building community.
It can be easy to ignore that fact that open source is just one facet of a growing maker community. People are producing their own podcasts and documentaries, coming together in maker spaces, and forming collectives around missions and artistic movements. The world of open source projects isn't very different; in order to build something bigger than a hobby project, at some point you have to focus on operational tasks to build the infrastructure that will allow you to scale your project past the opening phases. Here are the most common paths to securing project funding in the open source world.
Crowdfunding is the fundraising most open source teams are the most prepared to take advantage of. The principles are the same as getting people interested in your project; just talk up what you're trying to accomplish and get your friends and family interested, then branch out. Use storytelling techniques to connect the people who are already interested in your project with reasons why they should open their wallets, then give them avenues to share their involvement with their friends.
There are a number of crowdfunding platforms out there that allow you to get a functional campaign up and running in a few hours. Tell your story, upload a video and some pictures, and share your campaign with members of your community to get started.
Grantwriting takes a bit more work and research than crowdfunding, but if you've ever applied for a scholarship or taken part in a fellowship or other research or academic program, you should be somewhat prepared for grant applications.
Requirements change depending on whether you're applying for a grant from a government agency or a private foundation, and they'll vary for each organization. Government grants usually have a more extensive application process. It's good to have a few materials onhand to prepare. You'll want to have the resumes of all of the people involved in the project, a prospective budget, and a summary of your project and goals that will fit on one to five pages.
Once you have a file of these documents saved, it's a lot easier to put together a grant application. Some organizations will want you to turn in a simple letter of intent (it's like a cover letter) to show your interest in a grant while others will want you to send in a full proposal that could be twenty or thirty pages long with in-depth financial records included. Once you have a good foundation of materials, most grant applications will be a matter of copying and pasting the parts that address specific questions and requirements for each application.
At the least, you'll want to create a spreadsheet with the different grants you're interested in applying to, their application requirements, and any deadlines for funding opportunities. Managing dates and requirements can be the most complicated and time consuming part of the process, once you've gotten your flow down.
Courting investors isn't unlike applying for grants in many ways. You'll need to think up a quick pitch and go in-depth into your project with a pitch deck. You'll also need to think of your project in ways that are a bit different from writing grant applications and sending out crowdfunding feelers. If you're going to try to find investors for an open source project, then you'll have to consider the business implications of doing so. It's best to have a business plan fleshed out that takes into account how much money you'll need to launch your project as a business and who your customers will be.
There are open source business models out there. For example, both GitLab and WordPress give tools to those tech savvy enough to implement them for free, but offer their tech packaged to people who need a little more hand-holding and are willing to pay. White labeling is another option, where companies pay for packaged and branded software; the features included are usually spelled out in in-depth contracts with terms and conditions that dictate the software's use. For an open source project, white labeling allows the companies that can pay a premium the ability to use ready-packaged but focused software solutions, while the open source team can still offer the software's framework to developers savvy enough to build their own solutions with it.
Knowing who's going to use your software to build out solutions and who's going to be willing to pay to have everything packaged for them is a good way to entice investors to pay your way while you continue to work on the projects you love.