Picture of khaled sayed
how to use custom component
by khaled sayed - Monday, 9 March 2015, 1:53 PM
 

Please , I'm new in working with adapt frame work , Can any one help me and describe in details how to add a component to the adapt tool, i try to add DragDrop component , I can install it in my machine but i can't find it in the adapt UI ,

please i need some one to add steps in how to use any custom component

 

Thanks

Mark
Re: how to use custom component
by Mark Lynch - Monday, 9 March 2015, 2:04 PM
 

Hi,

 

Please see the documentation available here https://github.com/adaptlearning/adapt_authoring/wiki/Plugin-Compatibility

 

Picture of khaled sayed
Re: how to use custom component
by khaled sayed - Monday, 9 March 2015, 5:19 PM
 

Thank you for your importance , I check the link and i'm still wont to know how to use the registered component in the adapt tool, when i run the tool I didn't find the component in the UI , when i search using the '$ adapt search' I can see that the component is installed , but i can't know how to use it in the course

please advice me , I need to add the dragdrop component to the course

 

thanks

 

Picture of khaled sayed
Re: how to use custom component
by khaled sayed - Monday, 9 March 2015, 6:22 PM
 

I find an option in the adapt menu to upload Plugin or component but i don't know which file i use to upload I try to use every file in component package but it always give me error!!

so if any one try this before , please help

 

Thanks

khaled

Mark
Re: how to use custom component
by Mark Lynch - Tuesday, 10 March 2015, 3:50 PM
 

Hi,

The drag-drop component has probably not been developed with the capability to get it uploaded into the builder. The link provided above details the steps that you need to take to complete that task of correctly packaging the drag-drop component for use in the builder.

Picture of khaled sayed
Re: how to use custom component
by khaled sayed - Tuesday, 10 March 2015, 5:17 PM
 

Thank you again,

I read the all details in the link above , it is give me idea about how to make a component or register the component into the builder , OK I understand all of this but where i can use this component ( drag it ) or reference to it in the code behind

I'm not java script programmer , any one who is use this component before can write some instructions , it's a very useful tool that is strongly need in my course.

Thanks

Picture of Chuck Lorenz
Re: how to use custom component
by Chuck Lorenz - Wednesday, 11 March 2015, 4:47 PM
 

The shorter response:

- When I want to upload a plugin into the authoring tool, I have had success by downloading component/extension/theme from GitHub. I use the "Download ZIP" button. I select the entire zipped file when using the Plugin Manager.

- Running $adapt search does not install components, nor does it show which components have been installed. It shows what components are available to be used with the command $adapt install. The install command (e.g., $adapt install adapt-dragdrop or $adapt install dragdrop) is used with courses created by the framework. It is not how they're installed using the pre-release authoring tool.

- I doubt that you will have success using adapt-dragdrop within the authoring tool because it currently has no properties.schema. This I believe is what Mark Lynch was alluding to when he wrote: "probably not been developed with the capability to get it uploaded into the builder".


A long response because the forum is public and because I have learned a lot from other people's questions:

There are two major focuses in development right now: the Adapt framework and the Adapt authoring tool. The framework is stable with version 2.0 to be released soon. IMO, to be successful with it, one needs good technical skills: JSON, especially, but familiarity with command line interfaces, HTML, CSS, GitHub, NPM, Grunt, is helpful. Documentation for the framework is improving; but, at times, it assumes the reader has a technical background. This is a fair assumption because the framework has no graphic user interface. And because it is still young.

The authoring tool is intended to bridge the gap between the technical framework and the non-technical user. It has not been released in a stable version (as of 2015-03-11). As an interface, the authoring tool sets up expectations for the user; one expects to be able to do this and that. And it will, in due time. But some features have not been coded yet, and some features that currently work have not yet been documented. This is typical of an open source project early in its life.

The core developers of the Adapt framework have committed to maintaining a number of components. This group of components have "contrib" in their name (e.g., adapt-contrib-text). They are installed when one creates a course using $adapt create course. They are also included inside the authoring tool.

A benefit of being open source is that developers can contribute components that they create. Developers have been asked not to use "contrib" in the names of their components. This naming convention identifies who has responsibility for maintaining the code. Developers can make it easy to use their components by registering them. Once registered, such components will be included in the list returned by running $adapt search. This command does not install the components, nor does it show which components have been installed. It shows which components are available to be used with the command $adapt install. To install, one includes the name of the component after the command (e.g., $adapt install adapt-dragdrop or $adapt install dragdrop). That's how it's done within a course created by the framework. It is not how it's done using the pre-release authoring tool.

To install a non-core component in the authoring tool, I have had success by downloading the component from GitHub. I use the "Download ZIP" button. When inside the authoring tool, I select the entire zipped file to upload the plugin. (There may be other techniques; I have not yet found this aspect documented.) If the component has been packaged correctly, the upload will complete, and the name of the component will appear alongside the core components. Success? Not necessarily.

The development of the framework preceded the authoring tool. Some plugins were registered before work on the authoring tool began. The new authoring tool requires developers to include code to allow their component to interact with its graphic interface. A key piece is a file called properties.schema. If this is not packaged with the plugin, the authoring tool doesn't know what properties to present to the user for configuration.

There may be non-"contrib" components that have been registered and that do not yet have a properties.schema. Looking at the adapt-dragdrop component on GitHub, if this is indeed the component you are referring to, shows me it does not have a properties.schema. It will not present itself correctly within the authoring tool. On the GitHub site the developer has declared this component "a work in progress" (as of 2015-03-11). I understand this to mean that he doesn't consider it finished. Perhaps the component doesn't work with some browsers; perhaps it has bugs; perhaps it will work perfectly in your situation.

Adapt shows great promise. Expect some issues will require time to investigate until the product and documentation can mature.

(Written as a community member, not as a core contributer; so I invite corrections if any of this is incorrect or misleading.)

Picture of Brian Quinn
Re: how to use custom component
by Brian Quinn - Wednesday, 11 March 2015, 5:44 PM
 

That's a perfect response, Chuck.  Some aspects of the authoring tool are still indeed in a state of flux and will be documented well before we go to version 1.0.

Mark
Re: how to use custom component
by Mark Lynch - Wednesday, 11 March 2015, 5:49 PM
 

Hi Chuck,

Great post thanks for taking the time to write it. Right now our focus is to try and get as much working code out there as possible and build a community around that. With time and a lot of help from others we should be able to make the authoring tool easy to use and have great help documentation.

Mark.

Picture of Dennis Heaney
Re: how to use custom component
by Dennis Heaney - Wednesday, 11 March 2015, 5:49 PM
 

Just to concur with Brian - this is an excellent response, Chuck, and should be very illuminating to community members that are new to the site. Thanks!

Picture of khaled sayed
Re: how to use custom component
by khaled sayed - Thursday, 12 March 2015, 6:48 AM
 
 

Hi Chuck,

Great post thanks very match for clarifying such details, I understand a lot of things even I could upload the ‘slidingPuzzle’ component after I search for the “properties.schema” concept .

Thank You