PiranhaCMS / piranha.core

Piranha CMS is the friendly editor-focused CMS for .NET that can be used both as an integrated CMS or as a headless API.
http://piranhacms.org
MIT License
1.97k stars 555 forks source link

Video tutorials and other content #1384

Open tidyui opened 3 years ago

tidyui commented 3 years ago

We're currently reworking our documentation to improve it's structure and make it more complete, but we're also looking into other ways of spreading knowledge and tips/tricks. Let us know how you think we should do this in the best way possible and what you would like to see covered. This could for example be video tutorials, either isolated topics or a series of episode or we could even host open online meetings and Q&A session where everyone interested could join in. Should these things be scheduled once a month, or what interval would be the best.

Let us know what you think, let the sky be the limit!

Best regards

jensbrak commented 3 years ago

I believe doing is learning here. Samples and tutorials where samples are in focus but with explaining text (and not the other way around like many tutorials, ie loads of explaining text and short code snippets). Why? Concise but fully working samples provide isolated use cases that one can fiddle with. Try out, change and follow how a particular thing is done and made working all the way to a browsable result.

Let me ask a question, even though I have some ideas on what the answer(s) would be: what is the most recurring issues and questions that pop up in the chat in Gitter? It varies quite a lot but are there areas that seem to be more problematic to get working or understand that has to do with Piranha?

Another view of your question is not only to help people get going, but to reduce the workload for you guys to answer questions that keep coming back. With that in mind one could take a step back and see if there's more to explain not nescessarly related to Piranha itself. Just to clear the way for more relevant and insightful questions about Piranha.

Some spontanious ideas, just to get the discussion going here:

  1. Tutorial taking some simple "standard" ASP.NET Core example and enhancing it with Piranha. Something to highlight what Piranha adds, in the most minimal way possible. I haven't really looked since I kinda skipped ASP.NET Core and jumped directly to Piranha but I find myself wondering how things in Piranha and the samples/modules/etc may differ from what I would do without Piranha. Maybe I'm not the only one? So some sort of Piranha for people new to (or with limited knowledge) about ASP.NET Core to highlight what Piranha can do and will not do. I am thinking in the direction of going from a standard template from MS to one of the Piranha templates, kind of.
  2. Taking this to the other end of the scale I would imagine there might be people that comes from the CMS world. The phrase "PiranhaCMS is not a full fledged CMS like Wordpress" comes back here and there but I imagine that some sort of tutorial or sample explaining why this is and how it does work maybe can help people appreciate Piranha better and going into it with a better mindset? Not sure if this makes sense or is relevant but just a thought. I've worked with some open source CMSes (well, not worked but setup pages for organisations I have been engaged in) and it does take some time to let go of the thinking that such CMSes use when using Piranha.
  3. Eventually, I imagine a more advanced sample web would be interesting. Still made as barebone as possible, but with more avanced features added and explained. This becomes more relevant as Piranha grows with more features and modules etc? I know there were some sort of enterprise template but I am thinking more features rather than the enterprise use case itself.
  4. Sky is the limit? Ok. What if... if... one had a more interactive "FAQ" (of course made in Piranha)... A ruleset/map that generates a guide that takes the user from nothing to a ready made module or feature of piranha or if that does not exist, what the next steps would be. I'm thinking something like a series of questions with options like:
  5. Do you have experience with ASP.NET Core? Y/N --> 1.Y. Do you have tried or run a Piranha web? Y/N --> 1.Y.Y. What do you want to do? A: Add content to a page B: Add login provider C. ... D .... --> 1.Y.Y.A. Piranha provides A. Sites (read more here), B. Pages (read more here) and with a page there's C. Blocks (read more here and)... ... ... G. The content I'd like to add is not here. Learn me how to add it. --> 1.Y.Y.A.G....
    
    What would make this (?) interesting is that it (if done correctly) would guide the user to either existing code/feature or a page describing how to do it if it's missing in an easy and pedagogic way. And using Piranha and some sort of provider that maps resources (code samples, documentation pages, nuget packages) to a dynamic guide in Piranha - one would have to do minimal steps to add content to this guide. Also, this guide feature would be available as code, so it would be recursive ;)
gwhitdev commented 3 years ago

I usually try and look through docs/tutorials for something that helps me hit the ground running successfully when I have various ideas about what I want to implement.

So, if I wanted to know how to create a custom block successfully with all of its elements: public view, manager view, model(s) etc, I would have really appreciated a quick outline as to what a good custom block needs, where each of the files should/could go, how to register them with the app and what attributes can easily just be dropped-in to make something 'work' quickly.

It would be great to have a 'THIS' goes 'HERE' in written form to quickly get started and then a set of short videos with complementary written guides would help go from basic to intermediate to advanced.

RobRukavina commented 3 years ago

I usually try and look through docs/tutorials for something that helps me hit the ground running successfully when I have various ideas about what I want to implement.

So, if I wanted to know how to create a custom block successfully with all of its elements: public view, manager view, model(s) etc, I would have really appreciated a quick outline as to what a good custom block needs, where each of the files should/could go, how to register them with the app and what attributes can easily just be dropped-in to make something 'work' quickly.

It would be great to have a 'THIS' goes 'HERE' in written form to quickly get started and then a set of short videos with complementary written guides would help go from basic to intermediate to advanced.

I second this!