Skip to content
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 gallery for all OC modules #13995

Open
MikeAlhayek opened this issue Jul 13, 2023 · 21 comments
Open

Create a gallery for all OC modules #13995

MikeAlhayek opened this issue Jul 13, 2023 · 21 comments
Milestone

Comments

@MikeAlhayek
Copy link
Member

MikeAlhayek commented Jul 13, 2023

I think we should have a website like gallery.orchardcore.net where we can create a library for all OC's modules. It should also allow anyone to submit their own module.

This would be a nice place to search for all publicly (free or paid) available modules. An OC developer will be able to submit info like this

  1. Feature Title
  2. Feature Description
  3. YouTube video
  4. Link to docs
  5. Github and or nuget links

This way if someone is looking for something, they can search the gallery and see what is already available so they don't have to reinvent the wheel. I am sure @Piedone @LombiqTechnologies has lots of plugins that can be listed here...

Something like this would be nice https://wordpress.org/plugins/

We can even create a company profile to tie to each feature. We can also classify companies like @LombiqTechnologies as trusted partner or certified or something like that to give some features/modules higher credibility.

@Piedone Piedone changed the title Create a gallary for all OC modules Create a gallery for all OC modules Jul 13, 2023
@Piedone
Copy link
Member

Piedone commented Jul 13, 2023

This is a nice idea, and something we also intended (and still plan) to do under Show Orchard. But gallery.orchardcore.net would be great as well!

@MikeAlhayek
Copy link
Member Author

MikeAlhayek commented Jul 13, 2023

Maybe both the showcase and the gallery can be part of the same OC app. Where user can submit a feature into the gallery and/or submit a website to showcase. We should be able to build everything using the CMS components except for the approval before publish and verifying vendors process.

I think this will help growing OC and also help contributors like @LombiqTechnologies market their paid modules. And, it exposes available options to OC consumers giving them more reasons to use OC.

@duxonline
Copy link

Thank you @MikeAlhayek. This is a great idea. OrchardCore is a mature application framework and CMS, but its ecosystem lags behind other CMS like Umbraco. This will be first step in the right direction.

@hishamco
Copy link
Member

@Piedone is ShowOrchard migrated to OC?

@Piedone
Copy link
Member

Piedone commented Jul 18, 2023

Mostly done but not deployed yet.

@emrahtokalak
Copy link
Contributor

I believe it will be beneficial for the strengthening of the Orchard ecosystem.

@sebastienros
Copy link
Member

Could be part of showorchard, or maybe just the same app for components. We have discussed this many times and we really want a "dictionary" of thing, not host anything but text and links (not a nuget gallery for instance).

@sebastienros sebastienros added this to the 1.x milestone Jul 20, 2023
@MikeAlhayek
Copy link
Member Author

@sebastienros yes the idea is to create a a dictionary for information purposes that link to other sources like nuget, GitHub, etc. just a place where we can search OC related modules

@ghost
Copy link

ghost commented Jan 3, 2024

I think this is a very good idea. I wish we have a community manager who can look after things like this.

@hishamco
Copy link
Member

hishamco commented Jan 3, 2024

I remember talking with @Piedone a long time ago about something similar. Also, there's Orchard Showcase which could be a complement for such thing

I might work on this initially or could be a community driven project, at the end we might need subdomain for such this if we go LIVE

@Piedone
Copy link
Member

Piedone commented Jan 3, 2024

Yeah, we'll have this on https://showorchard.com/.

@sebastienros
Copy link
Member

Simplest solution is to create a custom GitHub repository that lets people submit pull requests with modules in a yml format. Then a site is statically generated to show these modules.

Antoine started a discussion that provides what I think the best example of such site.

#14504

@agriffard
Copy link
Member

I am thinking about how we could manage a gallery/directory for OC modules and themes.

We could imagine this kind of organization:

  • Backend : OC Admin that would allow owners to manage their modules and themes (Links, description, thumbnails, versions, free or paid).
  • Instead of using .md files: An Api (OC controller) that would expose modules and themes infos.
  • Frontend : SSG site building pages for each module and theme (and their versions).

@agriffard
Copy link
Member

Example from Umbraco:
https://marketplace.umbraco.com/package/umbraco.forms

image

@hishamco
Copy link
Member

I remember we talked about this with @Piedone, maybe we revise this in the upcoming weeks. Moreover, we already have https://showorchard.com/ that displays showcases probably featured modules and themes in the future

@agriffard
Copy link
Member

agriffard commented Sep 16, 2024

Package informations to list:

  • PackageName (will be the Title)
  • PackageType (Module or Theme)
  • Description
  • LatestPackageVersion
    • MinimalOrchardCoreSupportedVersion: List of OC versions
    • or OrchardCoreSuportedVersions[]
  • GitHubUrl
  • NugetPackageUrl
  • LatestReleaseUrl?
  • ProjectUrl
  • DocumentationUrl
  • IssueTrackerUrl?
  • ForumDiscussionUrl?
  • VideoUrl?
  • License (MIT, ...)
  • Free or Paid
  • Category (among staticly defined list of categories)
  • Tags[]
  • Screenshots
    • ImageUrl
  • Author
    • Name (Username)
    • ImageUrl (or Gravatar from email if not specified?)

Requirements:
The packages portal (whatever we name it) allows package owners to list their modules and themes and enter their informations, update the latest version when they release a new one, ...

The visitors can search by multiple filters: search term (in package name, author, description), type (module/theme), category, license, free or paid, minimal supported version.

A RSS feed returns the latest package updates.

Admin can approve packages?

Architecture:
It can be done in only one application if it is easier and straight forward to provide enhanced features like search, user submissions, ...
If an api exposes the data though, anyone can build a site to display the packages (Blazor Web app, Mobile app, SSG).

Hosting:
Azure, I guess, on the existing subscription.

Cons:

  • That represents a significant amount of work.

Pros:

  • That would help to promote external modules and themes.

Hardest part: As in any development, find an appropriate name and sub domain. Gallery is the most obvious name that comes to my mind.

In my personal opinion, ShowOrchard should stay a showcase site.

@Piedone
Copy link
Member

Piedone commented Sep 16, 2024

Yeah, so we didn't progress with this for ShowOrchard, and I'd welcome it otherwise happening.

As told @MikeAlhayek and @larremp at Harvest, I see little value in such a curated gallery for Orchard Core at this point. But having something simple that takes a low effort to create and maintain (important) that still helps discoverability would be nice.

I don't think creating a new version of https://gallery.orchardproject.net/ or something similar to https://marketplace.umbraco.com/ is feasible. Having a repo with an MD file (with a list/table) that authors can submit PRs to, akin to the various "awesome" lists would be suitable for this.

@sebastienros
Copy link
Member

I don't think creating ... or something similar to https://marketplace.umbraco.com/ is feasible

Are you talking features or look and feel? Because I believe the Umbraco example is exactly what we described (static site, md files for PRs), it's just static pages with the command line to type to add a project reference to your own local web app.

We can add search, filtering later, still static site, a json document, or a lunr index, or sqlite db, would contain the metadata for search. All created out of the committed MD files using a github workflow script, or local dotnet app from the same repos.

@Piedone
Copy link
Member

Piedone commented Sep 18, 2024

I don't think anything more complex than a list/table in an MD file in a repo is worth the effort for now. But of course, if Antoine likes to work on it then it's his decision.

@sebastienros
Copy link
Member

I see, so first step would be no external site, or OC integration. Just the repo and let people add things to it. Makes sense.

@MikeAlhayek
Copy link
Member Author

@agriffard it looks like you put lots of thoughts into this. Hopefully your are cooking something and we see a demo soon.

I don't think we should add too much info. It would be nice to be able to link a module to a vendor where we can mark some vendors are "trusted vendor" or something.

But a package should only have nuget name, description and usage examples, documentation page "if any", nuget package, version, OC version compatibility.

This should be all we need.

The features will be searchable. Each module will be tied to a vendor. Maybe cool to allow vendors to have a small profile to help promote them to encourage more library writing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants