Replies: 1 comment
-
I'm very eager to use the new version and would like to know if the PR permission for the new version is open to everyone. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
🌟 Hello everyone! 🌟
For those who don't know me, I'm Collin (aka @syropian), the creator and maintainer of Astral. I'd like to formally cut the ribbon on the official Astral discussion board, and give you all some updates on what's going on with Astral's development.
I've been building Astral on and off since 2013(!), and it's gone through a fair few number of iterations. The frontend of the very first version was built on AngularJS, then briefly rewritten in Riot.js, and finally rewritten in Vue 2.x...twice.
It's that time of year again, so I'm happy to say Astral is once again in the process of being rewritten, this time with Vue 3! While the backend is conceptually quite simple, I've also decided to rewrite it from scratch by leveraging the latest version of Laravel (8.x at the time of writing), as well as Inertia.js. This stack will greatly simplify a lot of the request/response logic from the client to the server, which should make any future debugging a little less of a headache.
So you may be wondering, "ok cool, so what new features are coming?", and that's a valid question. The truth is, not many. This rewrite is mostly focused on a couple key things:
Once this core rewrite is complete I'll be ready to work on some bigger features, which are currently uknown! Feel free to leverage this discussion board to pitch your own ideas if you think there's something that could be a great addition to Astral.
Making Astral Sustainable 💸
For those who don't know, I pay for everything related to Astral out of pocket. The infrastructure costs are admittedly fairly low, but more importantly I've spent many long nights and weekends of my own time building out features, fixing bugs, and triaging issues. I've burnt out multiple times, and nearly decided to leave the project altogether. The thing is, I've always wanted to make Astral sustainable — in fact many family and friends said I should of charged for it, when they heard how successful it was. However It always felt hard to justify, like I was going against the spirit of GitHub and open source.
A few years ago I started a Patreon — a simple way for users to support me with a monthly payment of their choosing. This felt like a pretty good solution, and I managed to get a few people kind enough to pledge a few bucks every month. I never pushed it too much, just a simple link in the user menu, and at one point I showed a dismissible modal for a while. Getting those first few bucks felt pretty great, but it never really took off. It may have been my fault for not pushing it harder, but I didn't want to be annoying, and once again it felt like I was going against the spirit of OSS.
A few years later I managed to get access to GitHub Sponsors — a built-in way for other members to contribute to OSS, right inside GitHub. After a few months I got my first few sponsors, and GitHub even matched their contributions for the first year I was in the program. If you're reading this and you're currently a sponsor, from the bottom of my heart, thank you so much! It seriously means a lot to me ❤️ .
Fast-forward to today, and I'm once again thinking about how I can improve Astral's sustainability in the long run. This time however, I'm starting to shift my mindset a bit. A few months back I was reading some article's on @lorisleiva's blog, and I noticed they had a member's section on their blog, with a post that could only be read if you sponsored Loris on GitHub. I was fascinated with the idea of gating content behind sponsorships, and I started thinking how I could incorporate this into Astral. Unlike Patreon, GitHub Sponsorships are built right into the platform, and Astral is, well, a GitHub-powered app. This means it would be fairly trivial to leverage sponsorships in a way that would really entice users to contribute.
Implementation 📐
I believe the most sensible way for me to implement sponsorships is feature-gating. Some features could be gated entirely, while others could have sensible limits before requiring a sponsorship. I haven't worked out the details yet, but I will likely float some ideas in another post at a later time.
I'm already a user, what will happen to me? 😞
There's two options here, one which is more attractive to me, and one which is likely more attractive to you:
This is really tough, I want to encourage my loyal users to contribute for their usage, but I don't want to piss them off either. I'll likely stew on this one for a bit.
Will there be a minimum amount? 💵
In the interest of good faith, since this is a very late potential addition, there will be no minimum amount required, aside from whatever the bare minimum GitHub requires (I believe it's $1). To put that into perspective, if every Astral user suddenly donated $1/month, I'd be making an extra $25,000+/month 🤯 . Every little bit helps, and I want to ensure everyone can enjoy the benefits without breaking the bank.
What about the self-hosted version? 🖥️
Since you have full access to the source code, you could of course strip out the sponsorship code, but since OSS is a big part of what makes Astral shine, I will ensure there is a single config option to turn off sponsorship requirements for anyone who would like to host an instance of Astral on their own server.
That's a wrap 🌯
To all my users, new and old, sponsor or not, thank you so much for joining me on this journey. It's been a heck of a ride so far, and I hope you'll stick around to see where we can take this thing. Star on friends! 🌟
— Collin
Beta Was this translation helpful? Give feedback.
All reactions