-
Notifications
You must be signed in to change notification settings - Fork 184
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
Created basic extensions framework docs #294
Conversation
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
|
||
For the side bar have a look at the files app, `defaults.js` & `fileSideBars` | ||
|
||
## API driven development |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure where to include this part. This seems more general information than extensions specific. 🤷
@kulmann I requested a review from you here since you were recently working with the extensions because of the settings, right? So I guess you can best see in case I forgot something. |
57e2354
to
7c9ef4b
Compare
@LukasHirt is this part of the documentation meant to be about oCIS extensions in general (covering both frontend and backend extensions), or only frontend? I'd prefer covering frontend and backend (and from what I read here, I think you do as well). Right now it looks to me like it is supposed to cover both and has a strong focus on frontend at the moment (which is fine). But please clarify before I review. |
@kulmann Yes, the idea was to cover both. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool! We can add more content about backend extensions later on. For frontend this is a comprehensive read already! Added some ideas for improvement.
docs/extensions-framework/_index.md
Outdated
geekdocFilePath: extensions-framework/_index.md | ||
--- | ||
|
||
Extension framework is one of the fundamental building blocks of oCIS. In the following documentation, you will learn how oCIS extensions work and how to create your own. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Keeping in mind that we want to cover both frontend and backend extension, I'm proposing this slightly changed version:
The extension framework is one of the fundamental building blocks of oCIS. In the following documentation, you will learn how oCIS extensions work and how they can be integrated into your setup. If you want to create your own oCIS extension, please have a look at the ocis-hello documentation. It was specifically made for guiding you through extension creation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should point more to this documentation in context of explaining how to create the extension rather than to ocis-hello. Of course, we should point to ocis-hello as an example extension which is why it was created.
Pointing to ocis-hello as the place where you learn how to create an extension instead of where you see how it works all together can lead to some confusion IMHO. E.g. in the ocis-hello we use rollupjs to bundle the frontend as amd module. Does this mean we have to use rollup? Why amd? Is it because ownCloud devs prefer that or is it required?
Also, this would lead just to jumping between those two docs. See how to create an ocis extension -> jump into ocis-hello docs. See how to load the extension in ocis-web -> jump back to extensions framework docs.
I'll push a new commit where you can see how I think it with pointing to ocis-hello as an example extension.
…e-frontend to extension-frontend
770f53d
to
8d257e5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need to check if this still complies with the monorepo (it should). But some parts don't make sense anymore, because we don't have ocis-hello in the single binary and it's too much hassle to describe to the reader how they can set up ocis + ocis-hello just for the purpose of showing that the frontend is extensible. Need a different approach here..
|
||
You can take a look at an example of a full config.json [here](https://github.com/owncloud/phoenix/blob/master/config.json.sample-ocis). | ||
|
||
## Test extension framework locally with ocis-simple |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
simple
doesn't exist anymore. Rewriting the first part is easy, but down in the list, steps 3 and 4 don't make sense then, because hello
is not part of any build or deployment anymore...
- remove it from the title
- remove the first two sentences from the first paragraph
- remove the
TAGS=simple
from make
|
||
Open the browser at [https://localhost:9200](https://localhost:9200) | ||
|
||
1. You land on the login screen. Click login |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Step 1 doesn't exist anymore. 😁 🚀
|
||
1. You land on the login screen. Click login | ||
2. You are redirected to an IDP with a login mask. Use `einstein:relativity` to login (one of the three demo users) | ||
3. You are redirected to [http://localhost:9200/#/hello](http://localhost:9200/#/hello), which is the landing page of the [ocis-hello](https://owncloud.github.io/extensions/ocis_hello/) extension |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello is not part of the single binary :-(
bitrotted, @LukasHirt can you update? |
Closing as we're moving into quite different direction and this is becoming more and more outdated - feel free to reopen/cherry pick useful information from here. |
Document how to create a frontend part of extensions and how are they loaded into Phoenix.
Open tasks: