-
-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create a new repo fastify/demo #1001
Comments
Imho It is already too much work to maintain the core plugins. I have the feeling that few core deps need more love but we have currently no time. It would be cooler if you first help with the other plugins before we open a demo repo. If the core plugins are all green, a demo repo on top would be no Problem. |
You mean code coverage? |
Do you have a concrete example you are willing to share or would you like to start one? |
I'd like to start a clean repo, following carefully the doc and trying to find interesting uses cases. Something basic at first, in order to gather your feedbacks and plan what to do next. But I'd like to know if you're interested before jumping in. |
Sorry @Uzlopak, I recently worked on an issue to increase test coverage on |
I believe any contribution can be of value, and this seems to provide good basics to start with |
Thanks for the proposal @metcoder95, It's not urgent so I can gradually work on this demo and looking at ongoing issues to help you with core plugins. @mcollina, are you open to the idea of an official demo repo on your side? |
+3 I would like seeing such an official demo repo using several plugins like maybe autoload, cors, env, helmet, mysql and swagger. With some routes, controllers, etc. |
Hey, I would love to help out with this. What is the status on this project? |
I am! https://github.com/fastify/demo here is the repo! |
@hpmouton After this first step, we could create a more feature-oriented roadmap to collaborate? |
Great stuff! Can't wait. |
The demo project for now is just a README file :\ So.. I dunno if Matteo already added more example code without committing or not. Otherwise maybe a PR? @mcollina maybe you want to be more explicit about what you did already without pushing to the git repo? Since you want to avoid people doing duplicate work. Or did you only setup a README, LICENSE and a gitignore thus far? |
As I understand it, Matteo created the repository so we could work on it ourselves. I offered to help create the demo, I didn't ask him to do it 😅 I'm going to push a very basic PR (no db, no auth, no features) this afternoon. Just the basic structure and from there we can create a roadmap and assign the tasks to volunteers. Does that sound good to you @melroy89? |
French hour afternoon ^ |
Ah that make sense. It wasn't fully clear to me what Matteo was going to do. Sounds awesome! Add me to the review list if you want. I'm from The Netherlands, so our French afternoon, is the same as mine afternoon hour ;P |
To be honest i had the same feeling about there is not a "rule" to use fastify but some guidance will be appreciated , more or less, almost all the material i found was created 3 years ago, researching a lot you can see the project is alive but the first contact is not good, like i expressed here #5502 - fastify/fastify#5502 (reply in thread), this demo will be very helpfully to understand basics |
Fastify has a very good reputation from a purely technical point of view in the Node.js ecosystem, but it's true that communication could be improved. I sincerely believe that there is room for an official Fastify academy offering courses on Fastify, advanced Node.js and software development more broadly. This would both generate profits to fund the project, as learners would prefer to be trained by the official academy, and potentially convert non-Fastify users who would be attracted by Node's advanced courses... It could be interesting to offer plans for companies, which would send out a very positive signal. Finally, the person in charge of communication could be a native English speaker. For example, Symfony is widely used in Europe, but it's an American who manages SymfonyCasts, in partnership with the company behind the Framework. |
I think once I've finished the demo, I'll work on fastify-cli The automatic commented code generation is very educational, I think the current component can be improved, the demo is an opportunity to think about what should be done for most of the projects. |
@jean-michelet thanks for the effort, i am designer and developer , i use to work more in frontend, ux, ui , etc... In any case, if there is anything I can help with to spread the project and improve its dissemination and adoption, let me know, I will be happy to collaborate. |
Maybe there are opportunities to contribute here:
I don't understand why people keep massively downloading Express though, maybe for legacy reasons and work opportunities.... But I know it annoys a lot of developers around me, who would prefer to see Fastiy or Adonis used. I think you'd make a positive contribution by using Fastify for your professional projects, and maybe hiring some developers if you can ^^ |
Yes. Legacy reasons. Porting from express to fastify basically means starting from scratch if you want to use the fastify ecosystem in it fullest with their plugin system. And then you have tons of people that are simply not aware. I wasn't aware of the existence of fastify, only after much digging and looking for alternatives. The de facto "standard" for a web application framework in nodejs is still express, due to all the media/blog post coverage and just people heard about it. Similar how Google is the most known search engine. |
I can share my perspective based on my experience. I started as a graphic designer, then moved to web design, and eventually into web development. Naturally, the next step was to learn programming, so I chose ReactJS. I found countless courses on creating a MERN stack, all of which used Express.js for the server. There are many resources, articles, and AI tools available to help with Express. Two years passed, and I had no idea about Fastify. My Express server worked fine, and I didn’t look for alternatives until I needed more power for my project. A senior dev friend suggested Fastify, and I started researching it. However, I found limited content about Fastify, most of it dated 2-3 years back. There wasn’t much in TypeScript or a solid architecture demo like this project. This gave me a sense of abandonment. What I want to communicate is that adoption should start from the ground up, with juniors and beginners willing to try new things. To attract them, there need to be tons of articles, examples, and a solid starting point. Good ambassadors like popular instructors, streamers, or course platforms could help. I often use Udemy and complement it with extensive research. While Fastify is powerful, it's less known because instructors prefer proven tools to avoid student frustration due to lack of resources. Fastify is young but needs more 'salsa'. It’s not an overnight task, but it needs a bit more push to grow. |
It's a tricky question. As a trainer, it's your duty to direct juniors towards the wealthiest possible job market. Besides, I don't think I'd recommend specializing in the backend as a junior. Moreother, Fastify is community driven, so if you want a new feature or your bugs fixed, opening an issue will result in a response like “No, because...” or “Ok, do you want to push a PR?”. You have to get your hands into the code, and the reality is that opensource is difficult even for many experienced developers, both technically and mentally -> accepting to be vulnerable by making mistakes publicly. I think that adoption by experienced devs and entrepreneurs can have a significant impact, because they're the ones in a position to adopt new technological solutions or have them adopted, and therefore, by domino effect, influence the job market. So while I share your view that communication could probably be improved, I wanted to bring another perspective. |
I disagree with this analysis. Instructors prepare courses they can sell, and most of the market is still express-dominated. As a result, instructors cover express. Note that Fastify is open-governed and run by volunteers. As a result, if anybody wants to contribute a blog or a tutorial, we are happy to support them. Nobody is blocking it. Moreover, Fastify is not young by far. It's also used by quite a few major companies worldwide. |
Does this mean that these volunteers can do educational business and benefit from community support, like links in the doc to promote them? Maybe experienced and regular contributors. Because creating quality content like video tutorials for free seems really difficult IMO. |
@mcollina @jean-michelet Thank you for the feedback.I still have a lot to learn about Fastify. |
Don't worry about that 😉 |
It really depends on a case-by-case basis. I don't expect much more than what we did for the book. |
@jcenlo I actually did a 1 hour and a half vidoe on the topic in January: https://www.youtube.com/watch?v=x3SG71Ut2tA&t=1s. |
Do you think this type of tool would have helped you adopt Fastify? |
I love it. Hopefully that pr will eventually be merged. And hopefully this pr will also be finalized. Not sure what the open actions points are. If any. |
Yep, I am really interested in developer experience and education more broadly. Talking about the demo, first PR is about to be merged, so I created a roadmap issue. Interested by your feedbacks: fastify/demo#2 |
@jean-michelet , brilliant , let me try it but look amazing, i will give you feedback in a couple of days i am really busy at the moment, thanks for your efforts |
FYI, it is still an idea for now ^^ But I will probably do it. |
As the repo exists now, I think we can close this issue. https://github.com/fastify/demo |
Agreed |
When I was in the PHP ecosystem, I worked with the Symfony framework. They have created a symfony/demo repo using what they consider best practices. I found the perspective of reading the code of a web project considered optimal by the core team very useful and reassuring.
Do you think it's worth it?
If so, I'm fully committed to work on it.
I'm not sure what the theme should be, though. It seems that the main type of development in the Node ecosystem are apis.
The text was updated successfully, but these errors were encountered: