Even though this release has been the culmination of a lot of hard work and hard thinking, this is not a finish line. It's a starting line.
For Empowering Community
Welcome to the Forem codebase, the platform that powers dev.to. We are so excited to have you. With your help, we can build out Forem’s usability, scalability, and stability to better serve our communities.
What is Forem?
Forem is open source software for building communities. Communities for your peers, customers, fanbases, families, friends, and any other time and space where people need to come together to be part of a collective See our announcement post for a high-level overview of what Forem is.
dev.to (or just DEV) is hosted by Forem. It is a community of software developers who write articles, take part in discussions, and build their professional profiles. We value supportive and constructive dialogue in the pursuit of great code and career growth for all members. The ecosystem spans from beginner to advanced developers, and all are welcome to find their place…
Every time we've had the opportunity to let the community contribute in new ways, we have been surprised and amazed. I've seen this happen over and over again since the start of the project a few years ago. This is not a library, this is the codebase that runs this platform. And it's a lot of fun to share!
This new chapter is part of an ongoing effort to maintain and improve the transparency we strive for, and of course, an opportunity to improve and grow our lovely pile of code. As I mentioned in my last post on the topic, we are very excited about the possibility that, with your contributions, this platform can eventually be re-purposed for communities and ecosystems outside of our scope.
We will continue to maintain and grow our developer community, but as a strong open source project. We imagine that this approach may lead to a lot of interesting and valuable use cases. We hope that some contributors come in with the goal of bolstering and improving dev.to itself, while others come to the project thinking about possible use cases as separate entities.
As this is the starting line, contributing guidelines and the open-source developer experience will need some ongoing improvements from us. So if you hit a stumbling block, we are here to help you, but we will also certainly make things better over time.
A huge thank you to our early contributors (@briankephart, @tiffanywismer, @yechielk, @nektro, @nickytonline, @edemca, @citizen428, @sabatesduran, @rhymes, @auua, @twhite, @niko, @arakodesigner and @joshichinmay) for not only committing code, but for providing us with lots of insight into their developer experiences while we prepared the repo and documentation.
An additional thank you to the companies Stride Consulting and Planet Argon. They each chipped in pro-bono time and effort, and we appreciate their contributions to this process. Stride was especially responsive and supportive as soon as we reached out to them. They sent @edemca to work with us for several days to help audit and take this over the finish line. We are incredibly grateful. I'd be remiss if I didn't also mention Corgibytes, who also helped us way back in the winter, but really helped guide us to get to that point. Corgibytes specializes in identifying and paying down technical debt, which we definitely needed at the time. All three of these shops definitely get the DEV seal of approval.
If you are coming from elsewhere on the web, and are not familiar with dev.to, we are a large online community of software developers committed to teaching one another, building our careers, and generally making software development a more collaborative, humane endeavor. We host articles and discussions that span from beginner to advanced, and as we grow we always work to foster a constructive environment that supports diverse use cases. As long as it is about code or the developer experience/life, all forms of blog posts and discussions are welcome.
Our members write posts, start discussions, and build their professional profiles. As we open-source, I'll remind folks that we are a for-profit company, but I can assure you that we are driven primarily by the values of building an inclusive and awesome software ecosystem. I'm sure everyone says this, but I think we wear it on our sleeves — the added transparency of open-sourcing should only help improve that accountability as we grow.
We are a Ruby on Rails app, with Preact on the front-end. We also have native apps on the way (🍏,🤖). The technology choices will evolve over time. We are far from devotees to any one style, and while we are not going to change too much over night, we will encourage healthy discussions and debates over the choices along the way. We also have hard dependencies on some of our external services, but it's all up for change as we grow. These discussions will be half the fun!
The core project is licensed under Affero GPL 3.0, a copyleft license used by similar projects. Any libraries built or extracted at any point in our future will be made available under MIT.
I’ll finish up with a reminder that we are very serious about our code of conduct, and we expect everyone to behave with respect for all involved.
Happy coding ❤️