This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
application_hosting [02/07/2022 23:27] – gfactor | application_hosting [05/06/2023 07:16] (current) – gfactor | ||
---|---|---|---|
Line 2: | Line 2: | ||
{{: | {{: | ||
- | Any number of applications can be built on the Qortal Data Network (QDN) when Q-Apps goes live. Everyone needs to remember to USE AT YOUR OWN RISK. We will have a star rating review and comments section as any app store would have but we can't expect the DevTeam to review and vet each application. | + | Q-Apps is LIVE! |
+ | |||
+ | Any number of applications can be built on the Qortal Data Network (QDN) now! Everyone needs to remember to USE AT YOUR OWN RISK. We will have a star rating review and comments section as any app store would have but we can't expect the DevTeam to review and vet each application. Just remember the most important security aspect - which is that Qortal already authenticate your account so an app should NOT be asking for any sort of credentials (especially your seed phrase or private key). | ||
Every application built on the Qortal Data Network (QDN) will be by default ‘unhackable’, | Every application built on the Qortal Data Network (QDN) will be by default ‘unhackable’, | ||
- | The Qortal development team is community-formed and community-run. Anyone can become part of the team by showing interest and demonstrating their skill. Therefore the team will continue to grow and the applications built will continually become more diversified, | + | The Qortal development team is community-formed and community-run. Anyone can become part of the team by showing interest and demonstrating their skill. Therefore the team will continue to grow and the applications built will continually become more diversified, |
There is quite literally no limit to the number of nor functionality of the applications that could be built on top of Qortal’s unique infrastructure. The limitless nature of the potential of the platform is what will draw countless developers’ interest to help build out the platform and its applications. | There is quite literally no limit to the number of nor functionality of the applications that could be built on top of Qortal’s unique infrastructure. The limitless nature of the potential of the platform is what will draw countless developers’ interest to help build out the platform and its applications. | ||
Line 12: | Line 14: | ||
Two main types of applications will exist: 1) default applications and 2) add-on applications. Default applications will come with the default installation of the software and will be ‘part of Qortal’ by default. These applications include some of which already exist like Q-Chat and the Trade Portal. Default applications are the ones that will ‘just be there’. Add-on applications (plugins and modules) are applications that will not be included by default when installing Qortal, but can be chosen to ‘opt-in’ by each user to be installed on their node. | Two main types of applications will exist: 1) default applications and 2) add-on applications. Default applications will come with the default installation of the software and will be ‘part of Qortal’ by default. These applications include some of which already exist like Q-Chat and the Trade Portal. Default applications are the ones that will ‘just be there’. Add-on applications (plugins and modules) are applications that will not be included by default when installing Qortal, but can be chosen to ‘opt-in’ by each user to be installed on their node. | ||
- | Qortal is the only blockchain platform that has both the ‘data layer’ and the ‘application layer’ making it an all-in-one solution for hosting any application with blockchain security and true decentralization. | + | Qortal is a blockchain platform that has both the ‘data layer’ and the ‘application layer’ making it an all-in-one solution for hosting any application with blockchain security and true decentralization! |
- | + | ||
- | ===== Notes From CalDescent 11/15/21 ===== | + | |
- | + | ||
- | Here's some information from Cal on the Dev Server: | + | |
- | + | ||
- | I think I might try and get the basic app store live in time for the Greater Reset. I remember at the last one John Bush asked "how do we build an app on Qortal?" | + | |
- | + | ||
- | I think that the extremely basic idea I have for the app store will allow anyone to create e.g. a blogging platform, or even a simple social network.Plus things like a youtube alternative and an iTunes alternative. I will probably make one or two apps to demonstrate what can be done, and to offer a template to othersz | + | |
- | + | ||
- | We can lock it down so that apps are only able to a) request data and b) publish data - that way they can't get involved with user funds or anything like that and the user would have to approve all requests, especially those that involve signing an ARBITRARY transaction. | + | |
- | + | ||
- | The architecture would work like this: | + | |
- | + | ||
- | 1. a user installs an app and accepts its requested permissions (i.e. the types of data it can request) | + | |
- | + | ||
- | 2. the app is served by the core, but being displayed by the UI in a sandboxed iframe | + | |
- | + | ||
- | 3. the app wants to display some data | + | |
- | + | ||
- | 4. app sends a message to the UI describing what it wants to request | + | |
- | + | ||
- | 5. the UI checks that the request is within the pre-approved limitations by the user | + | |
- | + | ||
- | 6. the UI then makes a request to the core, using the API key (this stops the app from requesting things directly) | + | |
- | + | ||
- | 7. the UI returns the data to the app via a message | + | |
- | + | ||
- | 8. the app displays the data | + | |
- | + | ||
- | Then the app wants to publish data: | + | |
- | + | ||
- | 1. the app sends a message to the UI with the data payload, resource ID, service type etc that it wants to publish | + | |
- | + | ||
- | 2. the UI again checks that this is within the allowed params (would be really strict) | + | |
- | + | ||
- | 3. if the params are allowed, the UI displays a popup showing the user what the app wants to publish | + | |
- | + | ||
- | 4. the user can confirm or deny the request | + | |
- | + | ||
- | 5. if confirmed, the UI signs a transaction using the private key | + | |
- | + | ||
- | 6. the UI informs the app on the outcome | + | |
- | + | ||
- | Luckily, HTML5 has an iframe " | + | |
- | + | ||
- | We are also protected by the fact that the core and UI run on different ports, which browsers treat as different origins, and therefore are sandboxed automatically. But we can add the sandbox feature just to be extra careful. | + | |
- | + | ||
- | ===== Notes From CalDescent 11/17/21 ===== | + | |
- | + | ||
- | Once the app store is ready I'm going to make one or two simple apps as an example. Then I hope others will give it a try too - they can extend my demo apps or start from scratch. I think one of them will be a really simple youtube alternative. So a place to upload videos and view them. The other might be a music player, or maybe a really basic blogging app, as that's probably more useful. The apps will be written in javascript, along with HTML, CSS, images etc. You can use any framework you like, such as React / Vue / AngularJS / jQuery, or even pure javascript. I will probably start by using a really lightweight framework called Alpine.js that allows you to add dynamic content to HTML really easily. | + | |
- | + | ||
- | The best part is that it is completely permissionless. Anyone can add an app to the store without any prerequisites. It's basically the opposite of Apple' | + | |
- | We already have private blacklists, but we can easily make it so that a user can upload their blacklist (or any other list) to the data network for others to use or modify. The idea being that people can publish any kind of list - even one that is just their favourite content - and then others can browse it (or in the case of blacklists, choose to automatically block everything on the list). The data network supports this kind of thing already - we're just missing the UI/ | + | See the [[Q-Apps]] page for more info. |