3rd party integrations/components

Is there a standard way to integrate a lot of 3rd party scripts or a guide on how to integrate a 3rd party script? I feel like we could almost make a standard way for this for most of these.

I’m imagining some creative ways in my head like being able to just force-include some javascript "<script>" tag and then associate it with a component/class in Aurelia.

I find it so silly that so many websites, such as TinyMCE offers “here’s the vue way, the svelte way, the react way, the angular way, the ‘web component’ way…” Strange how it isn’t the same for all of them. In each case you have to download a sort of e.g. ‘tinymce-vue’ npm module.

Is there a list of components that we are to create custom components for? Should we not have a website or database repository of these 3rd party integrations showing “the correct way” to integrate? Perhaps we may not need that if we develop a way to just port their scripts in.

A database where you can search would be useful for this–integration with popular 3rd parties used for web app development:

  • for spam protection (e.g. Akismet, Anti-Bee, etc.)
  • for Blog rich-text html editors… TinyMCE, CKEditor, just go and get your API key or whatever
  • for Google Recaptcha (what a pain that was for me in Au1–now gotta do it again for Au2), maybe I should develop my own anti-bot puzzle. Love those chess puzzles to prove you are human lol.
  • for data tables… such as ag-grid…
  • for openid or other login schemes
  • for Material-Design & Bootstrap especially is good for beginners getting into web development but may not have AI skills, I saw a guys’ resume, he built great set of backend code as a junior dev but couldn’t figure out Html/CSS or art or anything visually pleasing but I didn’t ding him for it while hiring.
  • for sentry or other logging/monitoring ideas
  • for survey/poll building on the fly
  • for paypal buttons or other donation apps

OR do you recommend I build my own custom components for a number of these things ( i won’t need them all probably )? These are such important parts of any website development.

If we had all the time in the world, there’d be tutorials somewhere for all of these when Au2 is out of alpha. But is there any plans or discussions for this for the future?

Happy 4th of July and keep up the great work folks.

2 Likes

Perhaps you can take a look at this Aurelia Contrib which contain a few resources and plugins. On the datagrid side, you can take a look at my plugin lib Aurelia-Slickgrid which does nearly all of what ag-grid does but for free, however please note that it only works for Aurelia 1 (at this point I don’t know when or if I ever will support Au2 since there aren’t much docs available on how to convert plugin libs from Au1 to Au2). I think there are other datagrid plugins that works for Au2 as well though it might be less feature full.

One of the reason to do plugins is to avoid having to repeat the same code over and over when creating similar projects, I mean all the bindings, events triggering and things that you would expect to provide in the View instead of in the ViewModel. For example, would you rather have the plugin, say a datepicker (like I did in Aurelia-Bootstrap-Plugins, taking care of binding the input value directly for you or would rather write few more lines of code to add event listeners to update the input value in all necessary conditions? I don’t know about you but I’d rather have the plugin do it for me the right way. As for the why do we have to have an Angular way, a Svelte way, etc… mainly because every single framework have their own way of adding bindings, attach events, trigger events, etc… so in my case I created Aurelia-Slickgrid but also created Angular-Slickgrid, the result and usage is pretty much the same but the internal implementations are quite different since they are framework specific.

The plugin concept is supposed to be easier and much better in Au2 to work with 3rd party libs, so perhaps someone else from the core team could reply to in a different way since I’m not using Au2 yet.

1 Like

Indeed. I was just suggesting if they make plugin development a lot easier, then yes this is gonna be amazing. Someone is gonna have to go through a lot of these common plugin developments and develop them for Au2. I also wanted to see if by talking about this if some people have already begun development of it, or setup a website tracking these kinds of plugins for au2 etc.