Three dimensional scene
A method and apparatus streamline the creation of three-dimensional web user interfaces for web-based stores by extracting elements from a database, reducing time and resource needs while enhancing user experience.
Patent Information
- Application Number
- GB2024005994
- Authority / Receiving Office
- GB · GB
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-29
- Publication Date
- 2025-11-12
AI Technical Summary
Generating three-dimensional platforms for user consumption is time-consuming and requires specialized technical knowledge, necessitating improvements in user interface creation for web-based stores.
A computer-implemented method and apparatus that receive design selections and extract elements from a database to generate a three-dimensional web user interface, allowing for efficient creation and updating of immersive shopping experiences without extensive technical knowledge.
Reduces time and resource requirements for creating three-dimensional websites by minimizing administrative input, providing an immersive shopping experience through three-dimensional components.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Field The present specification relates to three dimensional scene, particularly to a user interface comprising three dimensional elements. Background Generating three dimensional platforms for user consumption may involve tasks that are time consuming and require specialized technical knowledge on an administrators part. There remains a need for improvement in this field. Summary In a first aspect, this specification provides a computer-implemented method comprising: receiving a first request for generating a first web user interface for a first web-based store, wherein the first request comprises information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component; extracting one or more elements from a first database ; and generating the first web user interface based on at least the extracted one or more elements and at least one design selection. Some examples include generating a preview of the first web user interface; and receiving confirmation of publishing the first web user Interface. In some examples, the method further comprises, in response to receiving said confirmation: determining one or more selected addresses for the first web-based store; redirecting one or more Interaction requests on the first web user interface to the one or more selected addresses of the first web-based store. In some examples, generating the first web user interface comprises building a three-dimensional scene including the at least one three-dimensional component. In some examples, building the three-dimensional scene comprises at least: creating and / or updating a first project on a scene building platform, and building the three-dimensional scene as part of the first project based at least in part on the theme selection. In some examples, generating the first web user interface further comprises: storing identity information relating to the first project at a second database; using a deployment application programming interface for downloading the first project from the scene building platform in response receiving the first request; uploading the first project to a first server such that the three-dimensional scene is accessible via a first distribution address corresponding to the first web-based store. In some examples, the three-dimensional scene comprises one or more of: a three-dimensional space, three-dimensional furniture, three-dimensional accessories, and / or three-dimensional appliances. In some examples, the one or more elements extracted from the first database comprises information of one or more of: products, collections, identity details, contact details, branding details, and / or purchasing details corresponding to the first web-based store. Some examples include: receiving updates corresponding to the first web-based store; updating the first web user interface based on said updates. Some examples may further comprise checking for updates corresponding to the first web-based store, wherein the updates are received In response to said checking. In some examples, the computer-implemented method is enabled by an application extension implemented as one or more embeddable blocks on a website creation platform, wherein the embeddable blocks are usable for implementing one or more themes on said website creation platform. In some examples, the at least one design selection comprises one or more of: a theme selection or a sound selection. In a second aspect, this specification provides an apparatus comprising means for: receiving a first request for generating a first web user interface for a first web-based store, wherein the first request comprises information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component; extracting one or more elements from a first database ; and generating the first web user interface based on at least the extracted one or more elements and at least one design selection. The means may comprise: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured, with the at least one processor, to cause the performance of the apparatus. In a third aspect, this specification describes an apparatus configured to perform any method as described with reference to the first aspect. In a fourth aspect, this specification describes computer-readable instructions which, when executed by computing apparatus, cause the computing apparatus to perform any method as described with reference to the first aspect. In a fifth aspect, this specification describes a computer program comprising instructions for causing an apparatus to perform at least the following: receiving a first request for generating a first web user interface for a first web-based store, wherein the first request comprises information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component; extracting one or more elements from a first database ; and generating the first web user interface based on at least the extracted one or more elements and at least one design selection. In a sixth aspect, this specification describes a computer-readable medium (such as a non-transitory computer-readable medium) comprising program instructions stored thereon for performing at least the following: receiving a first request for generating a first web user interface for a first web-based store, wherein the first request comprises information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component; extracting one or more elements from a first database ; and generating the first web user interface based on at least the extracted one or more elements and at least one design selection. In a seventh aspect, a computer-implemented method comprising: receiving an access request from a user to access a first web-based store via a first address corresponding to the first web-based store; redirecting the access request to a first web user interface, wherein the first web user interface comprises at least one three-dimensional component, and wherein the first web user interface comprises one or more elements corresponding to the first web-based store; loading one or more three-dimensional scenes corresponding to the first web user Interface, wherein the one or more three-dimensional scenes are based, at least in part, on a design selection by an admin of the first web-based store; and providing a representation of the first web user interface to the user. Some examples include enabling the user to send one or more interaction requests on the first web user interface, wherein one or more received interaction requests are redirected to one or more selected addresses of the first web-based store. In some examples, loading the one or more three-dimensional scenes comprises: sending a request to a first server for accessing a first project corresponding to the one or more three-dimensional scenes; receiving the one or more three-dimensional scenes based at least in part on the access request and based on which first address the access request was received through. Some examples include providing one or more navigation elements for enabling the user to virtually interact with the one or more three-dimensional scenes. In an eighth aspect, this specification provides an apparatus comprising means for: receiving an access request from a user to access a first web-based store via a first address corresponding to the first web-based store; redirecting the access request to a first web user interface, wherein the first web user interface comprises at least one three-dimensional component, and wherein the first web user interface comprises one or more elements corresponding to the first web-based store; loading one or more three-dimensional scenes corresponding to the first web user interface, wherein the one or more three-dimensional scenes are based, at least In part, on a design selection by an admin of the first web-based store; and providing a representation of the first web user interface to the user. The means may comprise: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code configured, with the at least one processor, to cause the performance of the apparatus. In a ninth aspect, this specification describes an apparatus configured to perform any method as described with reference to the seventh aspect. In a tenth aspect, this specification describes computer-readable instructions which, when executed by computing apparatus, cause the computing apparatus to perform any method as described with reference to the seventh aspect. In an eleventh aspect, this specification describes a computer program comprising instructions for causing an apparatus to perform at least the following: receiving an access request from a user to access a first web-based store via a first address corresponding to the first web-based store; redirecting the access request to a first web user interface, wherein the first web user interface comprises at least one three-dimensional component, and wherein the first web user interface comprises one or more elements corresponding to the first web-based store; loading one or more three-dimensional scenes corresponding to the first web user Interface, wherein the one or more three-dimensional scenes are based, at least in part, on a design selection by an admin of the first web-based store; and providing a representation of the first web user interface to the user. In twelfth aspect, this specification describes a computer-readable medium (such as a non-transitory computer-readable medium) comprising program instructions stored thereon for performing at least the following: receiving an access request from a user to access a first web-based store via a first address corresponding to the first webbased store; redirecting the access request to a first web user interface, wherein the first web user interface comprises at least one three-dimensional component, and wherein the first web user interface comprises one or more elements corresponding to the first web-based store; loading one or more three-dimensional scenes corresponding to the first web user interface, wherein the one or more three-dimensional scenes are based, at least in part, on a design selection by an admin of the first web-based store; and providing a representation of the first web user interface to the user. In a thirteenth aspect, this specification describes: a first apparatus configured to perform: receiving a first request for generating a first web user interface for a first web-based store , wherein the first request comprises Information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component; extracting one or more elements from a first database; and generating the first web user interface based on at least the extracted one or more elements and at least one design selection; and a second apparatus configured to perform: receiving an access request from a user to access the first web-based store via a first address corresponding to the first web-based store; redirecting the access request to the first web user interface; loading one or more three-dimensional scenes corresponding to the first web user interface, wherein the one or more three-dimensional scenes are based, at least in part, on the at least one design selection by an admin of the first web-based store; and providing a representation of the first web user interface to the user. Brief Description of Drawings FIG. 1 is an illustration of an example user interface; FIG. 2 is a block diagram of a system in accordance with an example embodiment; FIG. 3 is a flowchart of an algorithm In accordance with an example embodiment; FIG. 4 is an illustration of a user interface in accordance with an example embodiment; FIG. 5 is an illustration of a user interface in accordance with an example embodiment; FIG. 6 is a flowchart of an algorithm in accordance with an example embodiment; FIG. 7 is an illustration of a user interface in accordance with an example embodiment; FIG. 8 is an illustration of a user Interface in accordance with an example embodiment; FIGs. 9 to 16 are flowcharts of algorithms in accordance with example embodiments; FIG. 17 Is a block diagram of components of a system In accordance with an example embodiment; and FIG. 18 shows an example of tangible media for storing computer-readable code which when run by a computer may perform methods according to example embodiments described above. Detailed description The scope of protection sought for various example embodiments of the invention Is set out by the independent claims. The embodiments and features, if any, described in the specification that do not fall under the scope of the independent claims are to be interpreted as examples useful for understanding various example embodiments of the invention. In the description and drawings, like reference numerals refer to like elements throughout. FIG. 1 shows an example user Interface, indicated generally by the reference numeral 10. The user interface 10 may be a web user interface, for example, for a web-based store (e.g. an e-commerce website having access to multiple brands or a website for a particular brand). For example, the user interface 10 may be a website for 'ShopABC' having an example domain name 'shopABC.com'. The user interface 10 shows a plurality of products 13 to 18 (e.g. sunglasses 13, watch 14, bag 15, shoes 16, hat 17, and shoes 18). The user interface 10 may further comprise one or more user interaction elements 12 (12a to 12c), where the user interaction elements 12 may comprise one or more of options for filtering or sorting products, adding products to cart, viewing cart or shopping lists, searching for other products, or the like. The user interface 10 is a two-dimensional user interface, such that a consumer's experience in accessing the user interface 10 may be significantly different than experiencing a physical store which may be enjoyable for the consumer. It may be desirable to provide a user interface that may allow a consumer to have an improved immersive shopping experience. FIG. 2 is a block diagram of a system, indicated generally by the reference numeral 20, in accordance with an example embodiment. The system 20 comprises an admin module 21, a database module 22, and an application module 23. For example, the admin module 21 may comprise functionality for requesting the application module 23 to generate a user interface 23 based, at least in part, on information retrieved from the database 22. In one example, the database 22 may comprise information relating to an existing user interface, such as the user interface 10. In an example embodiment, the application module 23 may comprise an application (e.g. a software application, a software plugin, a web plugin, a web-based application, or the like). The admin module 21 may be represent an administrator (e.g. IT administrator for a retail company who may or may not have specific website creation or programming knowledge) for sending a request to the application module 23 for generating a user interface, as will be described in further detail below. FIG. 3 is a flowchart of an algorithm, indicated generally by the reference numeral 30, in accordance with an example embodiment. The operations of the algorithm 30 may be performed at an application, such as the application module 23 described with reference to FIG. 2. As an example, the following flowchart will be described in conjunction with FIG. 1, where a first user interface is generated for retailer 'ShopABC'. The algorithm may start at operation 31, where a first request may be received, for example, from an administrator, where the first request is for generating a first web user interface for a first web-based store (e.g. shopABC). The first user interface may comprise at least one three-dimensional component. The first request comprise information of at least one theme selection. For example, the theme selection may determine visual aspects (e.g. aesthetics, colour scheme, interior design, or the like) of the first user interface. Next, at operation 32, one or more elements (e.g. elements relating to a web-based store for ShopABC) may be extracted from a first database (e.g. database 22). In one example, the extracted elements may comprise details of products being sold by ShopABC, such as prices, images, discounts, or the like, and may further comprise information such as sales information, contact information, or the like. For example, the first database may store information from an initial (e.g. two-dimensional) website, such as the user interface 10. At operation 33, the first web user interface is generated, based, at least in part, on the extracted one or more elements and the at least one design selection. In one example, the first web user interface may resemble a three-dimensional scene where one or more products corresponding to ShopABC may be arranged similar to a physical store. It would be appreciated that the operation of creating a three-dimensional scene extracting information from the first database (that may be populated in advance) significantly reduces the time and resources required for creation or a three-dimensional website. Furthermore, there is minimal input required from an administrator for creating the three-dimensional scene. Thus, the time and resources required for the creation of a 3D website may be considerably low compared to other available tools for 3D website creation. In an example embodiment, the operations of algorithm 30 may be enabled by an application extension implemented as one or more embeddable blocks on a website creation platform. For example, certain website creation platforms (e.g. Shopify ™) may enable retailers to create there own e-commerce websites without having extensive software development knowledge. Such website creation platforms may allow creation, designing, and / or updating of websites via application extensions (e.g. 'theme app extensions' for Shopify ™) that may be implemented as embeddable blocks. As such, the application module 23 may be implemented as an embeddable block on said website creation platform, where the final website may comprise a link and / or Interaction element for accessing the first web user interface, as generated at operation 33. The embeddable blocks may be added in any block or page of a website theme of said website creation platform. In one example, the application module 23 may be built as an application extension utilizing 'iframe' to render a three-dimensional scene corresponding to the first web user Interface. For example, the three-dimensional scene may be hosted on an external server (e.g. AWS cloudfrontT|V| and S3). In another example embodiment, the operations of algorithm 30 may be enabled by a standalone plugin or software application, which may be granted access (e.g. by the administrator) to a database corresponding retailer's existing website (e.g. having details of all products, discounts, or the like), and / or may be granted access to a database that otherwise comprises information of products, discounts or other information that the administrator would wish to appear on the first web user interface. FIG. 4 is an illustration of a user interface, indicated generally by the reference numeral 40, in accordance with an example embodiment. The user Interface 40 may be the first web user interface generated at operation 33 described with reference to FIG. 3. The user interface 40 may be a three-dimensional web user Interface comprising, for example, at least one or more elements extracted from a database corresponding to the user interface 10. For example, the user interface 40 comprises an illustration 45 of the bag 15, an illustration 43 of the sunglasses 43, an illustration 46 of the shoes 16, illustration 48 of the shoes 18, and may further comprise illustrations (not shown) of the watch 14 and the hat 17. The user interface 40 comprises at least one three-dimensional component, such that the products 13 to 18 may be shown to be arranged in a three-dimensional scene (e.g. appearing to have shelves arranged similar to a physical store). A user interacting with the user interface 40 may be able to navigate through the three-dimensional scene to view more products, and / or perform tasks such as viewing price information, viewing discount information, adding products to basket, purchasing products or the like. FIG. 5 is an illustration of a preview of a user interface, the preview indicated generally by the reference numeral 50, in accordance with an example embodiment. The preview 50 may comprise an editing platform provided to an administrator for purposes of viewing the user interface (e.g. the user interface 40, for example viewing the user interface before publishing), and further for allowing the administrator to provide one or more design selections to be used in generating the first web user interface. The preview 50 may comprise one or more of controls 52 to 57. For example, the control 52 may allow the administrator to zoom through the preview 50 and / or view the preview 50 in full-screen mode. The control 53 may allow the administrator to change the volume of any sounds to be provided at the first web user interface. The control 54 may allow the administrator to select, enable, and / or disable sounds for the first web user interface. The control 55 may allow the administrator to provide a design selection, or more particularly, select a theme for the first web user interface. For example, by clicking on the control 55, a theme selection window 51 (e.g. a popup window) may be presented to the administrator for selecting one of the themes 51a to 51d. The themes 51a to 51d may represent different aesthetics. The control 56 may allow the administrator to set or update navigation tools or controls (e.g. panning, zooming, etc.) to be presented to a user when navigating the first web user interface. It would be appreciated that more, fewer, and / or different controls may be provided to the administrator, such that all of the said controls are examples only and may or may not be required for enabling the administrator to provide a design selection. The preview 50 may comprise previews of one or more products, such as a preview 57 of the bag 15 and a preview 58 of the shoes 16. FIG. 6 is a flowchart of an algorithm, indicated generally by the reference numeral 60, in accordance with an example embodiment. In one example, the operations of the algorithm 60 may be performed at the application module 23. At operation 61, a preview of the first web user interface may be generated. For example, before publishing the first web user interface, an administrator may be provided the preview of the first web user interface, such that the administrator may view and / or edit elements of the first web user interface. In one example, the preview may be similar to the preview 50 as described with reference to FIG. 5. Next, at operation 62, a confirmation may be received, for example from the administrator, for publishing the first web user interface. As such, the administrator may send a confirmation (e.g. by clicking on a confirmation button on the preview page) to the application module 23 to confirm that the first web user interface is ready to be published. For example, once the first web user interface is published, the first web user interface may be accessible (e.g. to customers) via a link and / or shortcut button of the first web-based store (e.g. ShopABC). At operation 63, one or more selected addresses for the first web-based store may be determined by the application module 23, such that one or more interaction requests (e.g. interaction by customers) on the first web user interface may be redirected, at operation 64, to one or more selected addresses of the first web-based store. For example, if a customer clicks on an item (e.g. illustration 45 for the bag 15) displayed in the first web user interface or adds an item to cart, the request may be redirected to an address of the first web-based store, for example, the selected address relating to carrying out the steps of purchasing the bag 15. Operations 63 and 64 may be optional, such that they may be performed at a later time, or may not be performed subsequent to the operation 62. FIG. 7 is an illustration of a user interface, indicated generally by the reference numeral 70, in accordance with an example embodiment. The user interface 70 may be part of the first web user interface (e.g. showing right side of the user interface 40. For example, a user (e.g. customer) may zoom or pan the first web user interface to view the user interface 70. The user interface 70 comprises illustrations 75, 73, and 74 for the bag 15, sunglasses 13, and watch 14 respectively. The user interface 70 further comprises interaction elements 71, 72, and 76. For example, the interaction element 71 may correspond to the illustration 75, and may allow a user (e.g. customer) to view details of the bag 15. Similarly, the interaction elements 72 and 76 may correspond to the illustrations 73 and 74 respectively. FIG. 8 is an illustration of a user interface, indicated generally by the reference numeral 80, in accordance with an example embodiment. The user interface 80 comprises all elements of the user interface 70, and further comprises a window 81. For example, a user may interact with (e.g. by clicking) the interaction element 72 for viewing details of the sunglasses 13 on the window 81. The window 81 may comprise details such as one or more of the name (e.g. brand name, style name, etc.) of the sunglasses 13, and the price (e.g. £50.00) of the sunglasses 13. The window 81 may further comprise an interaction element 82 (e.g. 'Add to Cart' option for the user). As such one or more interaction elements may enable a user (e.g. customer) to send one or more interaction requests on the first web user interface. In one example, one or more received interaction requests are redirected (e.g. operation 64 described with reference to FIG. 6) to one or more selected addresses of the first web-based store. FIG. 9 is a flowchart of an algorithm, indicated generally by the reference numeral 90, in accordance with an example embodiment. In one example, generating (e.g. operation 33) the first web user interface may comprise building (e.g. based on the operations of algorithm 90) a three-dimensional scene, including the at least one three-dimensional component. At operation 91, a first project may be created and / or updated on a scene building platform (e.g. Three.js, PlayCanvas ™, or the like). For example, when an administrator sends an initial request to the application 23, the application module 23 may create the first project on the scene building platform. Alternatively, or in addition, the first project may be created at an earlier time, and deployed at the first web user interface when the request for generating the first web user interface is received. At operation 92, the three-dimensional scene corresponding to the first web user interface may be built as part of the first project. The first project may be built based, at least in part, on a design selection by the administrator (e.g. as described above with respect to FIG. 5). FIG. 10 is a flowchart of an algorithm, indicated generally by the reference numeral 100, in accordance with an example embodiment. In one example, after the operations of building the first project three-dimensional scene, generating (e.g. operation 33) the first web user interface may comprise one or more operations of the algorithm 100. At operation 101, identity information (e.g. project ID) relating to the first project may be stored in a second database. At operation 102, a deployment application (e.g. deployment application programming interface) may be used for downloading the first project from the scene building platform in response to receiving the first request from the administrator. Next, at operation 103, the first project may be uploaded to a first server (e.g. S3 server) such that the three-dimensional scene is accessible via a first distribution address (e.g. Cloudfront ™ distribution uniform resource locator (URL)) corresponding to the first web-based store. In an example where the three-dimensional scene is hosted on an external server (e.g. AWS Cloudfront), a cache for the external server may be invalidated when the first project is uploaded to the first server. In one example, the three-dimensional scene comprises one or more of: a three-dimensional space, three-dimensional furniture, three-dimensional accessories, and / or three-dimensional appliances. FIG. 11 is a flowchart of an algorithm, indicated generally by the reference numeral 110, in accordance with an example embodiment. The operations of the algorithm 110 may comprise example operations from an administrator's perspective. An admin 111 may install or access an application for a website-creation platform (e.g. Shoplfy ™) at operation 112, and may proceed with an onboarding process at operation 113. The onboarding process may allow the administrator to enter information (e.g. information relating to the web-based store, payment information, design selection for the first web user interface, or the like). In an example embodiment, the onboarding process, as detailed in the block 114, may comprise fetching data, such as data relating to the web-based store, for example from a database (e.g. database 123). The onboarding process may further comprise storing a design selection specified by the administrator onto the database. The design selection may include one or more of information relating to branding, theme selection, or the like. In one example, the fetching data and storing the design selection may be performed at a background, for example, using backend application programming interface(s) (APIs). After the onboarding process, a dashboard 115 may be presented to the administrator, where the administrator may update one or more elements of the first web user interface or design selection. In one example, at least part of the onboarding process may be repeated based on the updates by the administrator. At the dashboard 115, a preview of the first web user Interface may be generated for the administrator to preview the three-dimensional scene before the first web user interface is published. After generating the preview, the first web user interface 117 may be generated, which may comprise fetching, at operation 116, a customized or selected link (e.g. link 121) on a website (120) of the web-based store, where the link may allow access to the three-dimensional scene of the first web user interface 117. The dashboard 115 may optionally further be used for displaying instructions to be followed at operation 118 to embed a three-dimensional scene on a website for the first web-based store. For example for a website creation platform such as Shopify ™, after adding a theme application extension implementing the application module 23, a link (link 121) to the three-dimensional scene of the first web user interface may be published at operation 119 on the website (e.g. website 120) of the web-based store. In an example embodiment, a number of processes (e.g. onboarding process described above) may be performed at the backend 124, which may comprise a plurality of servers. Further, for example, generating the preview of the first user interface may comprise fetching a custom link for the web-based store where the first user interface may be accessible. In a further example, the three-dimensional scene and / or the link of the first web user interface may be stored at the backend server(s) 124. The backend 124 may be in communication with the database 123, for example, to extract and / or store information relating to the first web-user interface. In a further example, the admin 111 may update store data on the website creation platform 122 which may trigger one or more webhooks (e.g. for connecting the update with the existing first web-user interface, where the webhooks may relate to product, collection, and / or shopping) at the backend 124. In another optional example, after operation 112, a welcome notification (e.g. automated welcome email) may be sent via the backend 124 to the admin 111. In an example embodiment, at operation 125, it is determined whether cache is available for data being held by one or more backend servers. If cache is not available, one or more CRUD (create, read, update, and delete) operations may be performed for the database 123. If cache is available, a cache database 126 (e.g. Redis ™) may be used for implementing the cache. The backend 124 may also update the cache database 126 if required. In an example embodiment, the backend server 124 may be a Rest API server built on NodeJS with typescript. The database 123 may be implemented using Mongo Db and Mongoose ORM. The backend server 124 may all API logic for creating the three-dimensional scene and allow for user interaction with the first web user interface. FIG. 12 is a flowchart of an algorithm, indicated generally by the reference numeral 130, in accordance with an example embodiment. The operations of the algorithm 130 may comprise example operations from a user's (e.g. customer's) perspective. A customer 131 may access a website for a web-based store and may access the first web user interface comprising the three-dimensional scene at operation 132. The first web user interface may be accessed through the website of the web-based store or may alternatively be accessed directly using a link (e.g. URL for the three-dimensional scene). At operation 133, the three-dimensional scene (3D scene) may be loaded, for example, from a server (e.g. content delivery network (CDN) server). While the 3D scene is being loaded at operation 134 (e.g. may take some time in the range of a few minutes), design selection(s) (e.g. theme changes, product textures) by an administrator may be applied to the 3D scene at operation 135. At operation 136, the 3D scene may be generated to be viewed by the user (e.g. customer). For example, the website 137 for the web-based store may comprise a link 138 for accessing the first web user interface 139 (comprising the 3D scene. In an example embodiment, a developer 140 may develop one or more 3D scenes and / or 3D experiences at operation 141, which 3D scenes are then made available to the administrator for design selection. If a main branch is updated (e.g. changes in designs or content of the 3D scenes) by the developer 140 at operation 142, the three-dimensional scene stored In the backend server may be updated periodically and / or regularly (e.g. updated using continuous integration and continuous delivery / continuous deployment (CICD)). The updates may be implemented at the backend servers (e.g. AWS S3 and AWS CloudFront) such that the first user interface loaded for the customer 131 may always be up to date. In an example embodiment, the application module 23 may be implemented using a NodeJs template, which may combine a plurality of third-party toold. For example, the backend may be built using 'Express', the frontend may be a 'React' frontend built using 'Vite'. File-based routing may be used in conjunction of a 'React Router' for routing requests. The administrator application programming interface may be queried by a 'React Query'. Some further tools may be available for creating the first web user interface. In an example, in a sceneraio where the website creation platform is Shopify ™, some the tools may comprise: 'Shopify API library' adds OAuth to the Express backend. This may allow users install the app and grant scope permissions. 'App Bridge React' adds authentication to API requests in the frontend and renders components outside of the App's iFrame. 'Polaris React' may be used as a design system and component library that may help developers build high quality, consistent experiences for Shopify merchants. Custom hooks may make authenticated requests to the Admin API. File-based routing may make creating new pages easier. FIG. 13 is a flowchart of an algorithm, indicated generally by the reference numeral 150, in accordance with an example embodiment. In one example, the operations of the algorithm 150 may be performed at the application module 23. At operation 151, updates corresponding to the first web-based store may be received, for example, from an administrator. At operation 152, the first web user interface may be updated based on said updates. For example, the updates may be relating to products for the web-based store, design selections, sales or discounts, or the like. At an optional operation 153, the application module 23 may check for updates corresponding to the web-based store, such that the updates may be received at operation 151 in response to the checking. In an example embodiment, the checking may be performed periodically. FIG. 14 is a flowchart of an algorithm, indicated generally by the reference numeral 160, in accordance with an example embodiment. The operations of the algorithm 160 may be performed at a module, such as a server module, that may be accessed by a user (e.g. customer). At operation 161, an access request may be received from a user to access a first web-based store (e.g. website for the web-based store and / or link for the first web user interface with the 3D scene) via a first address corresponding to the first webbased store. At operation 162, the access request may be redirected to a first web user interface. As discussed above, the first web user interface comprises at least one three-dimensional component, and the first web user interface comprises one or more elements (e.g. illustrations of products 13 to 18 being sold and / or advertised) corresponding to the first web-based store. At operation 163, one or more three-dimensional scenes corresponding to the first web user interface may be loaded. The one or more three-dimensional scenes are based, at least in part, on a design selection by an admin of the first web-based store. At operation 164, a representation of the first web user interface may be provided to the user. FIG. 15 is a flowchart of an algorithm, indicated generally by the reference numeral 170, in accordance with an example embodiment. The operations of the algorithm 170 may be performed at a module, such as a server module, that may be accessed by a user (e.g. customer), and may be performed after the operations of algorithm 160. At operation 171, the user may be enabled to send one or more interaction requests on the first web user interface. For example, with reference to FIG. 7 and FIG. 8, the interaction elements 71, 72, 73 may be provided to enable the user to send the one or more interaction requests. One or more other interaction elements may be provided for allowing the user to navigate through the first web user interface, such as panning, zooming, viewing other products, changing product search criteria, adding to cart, viewing cart, or the like. In one example, the one or more received interaction requests may be redirected to one or more selected addresses of the first web-based store. FIG. 16 is a flowchart of an algorithm, indicated generally by the reference numeral 180, in accordance with an example embodiment. The operations of the algorithm 180 may be performed at a module, such as a server module, as part o the operation 163 for loading the one or more 3D scenes. At operation 181, a request may be sent to a first server for accessing a first project (e.g. on the scene building platform, such as Three.js) corresponding to the one or more three-dimensional scenes. Next, at operation 182, the one or more three-dimensional scenes may be received based at least in part on the access request and based on which first address (e.g. address for purchasing products or moving through the 3D scene; or address for viewing specific products and / or collections) the access request was received through. In an example embodiment, one or more navigation elements may be provided to the user for enabling the user to virtually interact (e.g. panning, zooming, viewing other products, move within the 3D scene, changing product search criteria, adding products to cart, viewing cart, or the like) with the one or more three-dimensional scenes. For completeness, FIG. 17 is a schematic diagram of one or more components or modules 302 to 318 implementing the one or more of the example embodiments described in the previous figures 1 - 10, which hereafter are referred to generically as a processing system or apparatus 300. The processing system 300 may have one or more processors 302, one or more memories 304 connected to the one or more processors and comprised of one or more RAM 314 and ROM 312 memories, and, optionally, one or more user inputs 310 and outputs, such as displays, 318. The processing system 300 may comprise one or more network / apparatus interfaces 308 for connection to one or more communication network / apparatus, e.g. one or more modems which may be wired or wireless, such a cellular telecommunication network, a short range wireless network (such as wireless local area network (WLAN), BluetoothTM, Matter network, etc.). Additionally, the apparatus 300 may comprise or may be communicatively, e.g. wirelessly, connected to one or more sensor devices, for example, a positioning sensor, a motion sensor, a physiological sensor, an loT sensor, a camera, a microphone, etc. to receive sensor data. The interface 308 may also operate as a connection to other apparatus such as device / apparatus which is not network side apparatus. Thus, direct connection between devices / apparatus without network participation is possible. The one or more processors 302 are connected to the other components in order to control operation thereof. The one or more memories 304 may comprise a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD). The ROM 312 of the memory 304 stores, amongst other things, an operating system 315 and may store software applications 316. The RAM 314 of the memory 304 is used by the processor 302 for the temporary storage of data. The operating system 315 may contain computer program code which, when executed by the processor implements aspects of the algorithms 30, 60, 90, 100, 110, 130, 150, 160, 170, and 180 described above. Note that in the case of small device / apparatus the memory can be most suitable for small size usage i.e. not always hard disk drive (HDD) or solid-state drive (SSD) is used. The processor 302 may take any suitable form. For instance, it may be a microcontroller, a plurality of microcontrollers, a processor, a multicore processor or a plurality of processors. The processing system 300 may be a mobile communication device, an loT (Internet of Things) device, a multimedia device, a standalone computer, a server, a console, or a network thereof. The processing system 300 and needed structural parts may be all inside device / apparatus such as loT device / apparatus i.e. embedded to very small size In some example embodiments, the processing system 300 may also be associated with external software applications. These may be applications stored on a remote server device / apparatus and may run partly or exclusively on the remote server device / apparatus. These applications may be termed cloud-hosted applications. The processing system 300 may be in communication with the remote server device / apparatus in order to utilize the software application stored there. FIG. 18 shows tangible media, specifically a removable memory unit 365, storing computer-readable code which when run by a computer may perform methods according to example embodiments described above. The removable memory unit 365 may be a memory stick, e.g. a USB (Universal Serial Bus) memory stick, having internal memory 366 for storing the computer-readable code. The internal memory 366 may be accessed by a computer system via a connector 367. Other forms of tangible storage media may be used. Tangible media can be any device / apparatus capable of storing data / information which data / information can be exchanged between devices / apparatus / network. Example embodiments of the present invention may be implemented by various means, for example, in software, instruction set, hardware, circuitry, application logic or a combination of the software, instruction set, hardware, circuitry and application logic. The software and / or application logic may reside on memory, or any computer media. In an example embodiment, the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media. In the context of this document, a "memory" or "computer-readable medium" may be any non-transitory media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer. Reference to means of, where relevant, "computer-readable storage medium", "computer program product", "tangibly embodied computer program" etc., or a "processor" or "processing circuitry" etc. should be understood to encompass not only computers having differing architectures such as single / multi-processor architectures and sequencers / parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices / apparatus and other devices / apparatus. References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device / apparatus as instructions for a processor or configured or configuration settings for a fixed function device / apparatus, gate array, programmable logic device / apparatus, etc. As used in this application, the term "circuitry" refers to all of the following: (a) hardware-only circuit implementations (such as implementations in only analogue and / or digital circuitry) and (b) to combinations of circuits and software (and / or firmware), such as (as applicable): (i) to a combination of processor(s) or (ii) to portions of processor(s) / software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a server, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present. If desired, the different functions discussed herein may be performed in a different order and / or concurrently with each other. Furthermore, if desired, one or more of the above-described functions may be optional or may be combined. Similarly, it will also be appreciated that the flow charts or message sequence of Figures 3, 6, 9 to 16 are examples only and that various operations depicted therein may be omitted, reordered and / or combined. It will be appreciated that the above described example embodiments are purely illustrative and are not limiting on the scope of the invention. Other variations and modifications will be apparent to persons skilled in the art upon reading the present specification. Moreover, the disclosure of the present application should be understood to include any novel features or any novel combination of features either explicitly or implicitly disclosed herein or any generalization thereof and during the prosecution of the present application or of any application derived therefrom, new claims may be formulated to cover any such features and / or combination of such features.
Claims
1. A computer-implemented method comprising:receiving a first request for generating a first web user interface for a first webbased store, wherein the first request comprises information of at least one design selection, and wherein first web user interface comprises at least one three-dimensional component;extracting one or more elements from a first database; andgenerating the first web user interface based on at least the extracted one or more elements and at least one design selection.
2. A method as claimed in claim 1, further comprising:generating a preview of the first web user interface; andreceiving confirmation of publishing the first web user interface.
3. A method as claimed in claim 2, further comprising, in response to receiving said confirmation:determining one or more selected addresses for the first web-based store;redirecting one or more interaction requests on the first web user interface to the one or more selected addresses of the first web-based store.
4. A method as claimed in any one of claims 1 to 3, wherein generating the first web user interface comprises building a three-dimensional scene including the at least one three-dimensional component.
5. A method as claimed in claim 4, wherein building the three-dimensional scene comprises at least:creating and / or updating a first project on a scene building platform, andbuilding the three-dimensional scene as part of the first project based at least in part on the theme selection.
6. A method as claimed in 5, wherein generating the first web user interface further comprises:storing identity information relating to the first project at a second database;using a deployment application programming interface for downloading the first project from the scene building platform in response receiving the first request; anduploading the first project to a first server such that the three-dimensional scene is accessible via a first distribution address corresponding to the first web-based store.
7. A method as claimed in any one of claims 4 to 6, wherein the three-dimensional scene comprises one or more of: a three-dimensional space, three-dimensional furniture, three-dimensional accessories, and / or three-dimensional appliances.
8. A method as claimed in any one of the preceding claims, wherein the one or more elements extracted from the first database comprises information of one or more of: products, collections, identity details, contact details, branding details, and / or purchasing details corresponding to the first web-based store.
9. A method as claimed in any one of the preceding claims, further comprising: receiving updates corresponding to the first web-based store;updating the first web user interface based on said updates.
10. A method as claimed in claim 9, further comprising checking for updates corresponding to the first web-based store, wherein the updates are received in response to said checking.
11. A method as claimed in any one of the preceding claims wherein the computer-implemented method is enabled by an application extension implemented as one or more embeddable blocks on a website creation platform, wherein the embeddable blocks are usable for implementing one or more themes on said website creation platform.
12. A method as claimed in any one of the preceding claims, wherein the at least one design selection comprises one or more of: a theme selection or a sound selection.
13. A computer-implemented method comprising:receiving an access request from a user to access a first web-based store via a first address corresponding to the first web-based store;redirecting the access request to a first web user interface, wherein the first web user interface comprises at least one three-dimensional component, and wherein the first web user interface comprises one or more elements corresponding to the first web-based store;loading one or more three-dimensional scenes corresponding to the first web user interface, wherein the one or more three-dimensional scenes are based, at least in part, on a design selection by an admin of the first web-based store; andproviding a representation of the first web user interface to the user.
14. A method as claimed in claim 13, further comprising:enabling the user to send one or more interaction requests on the first web user interface, wherein one or more received interaction requests are redirected to one or more selected addresses of the first web-based store.
15. A method as claimed in any one of claims 13 and 14, wherein loading the one or more three-dimensional scenes comprises:sending a request to a first server for accessing a first project corresponding to the one or more three-dimensional scenes;receiving the one or more three-dimensional scenes based at least in part on the access request and based on which first address the access request was received through.
16. A method as claimed in any one of claims 13 to 15, further comprising providing one or more navigation elements for enabling the user to virtually interact with the one or more three-dimensional scenes.
17. A system comprising:a first apparatus configured to perform:receiving a first request for generating a first web user interface for a first webbased store, wherein the first request comprises information of at least one design selection, and wherein first web user Interface comprises at least one three-dimensional component;extracting one or more elements from a first database;generating the first web user interface based on at least the extracted one or more elements and at least one design selection; and a second apparatus configured to perform:receiving an access request from a user to access the first web-based store via a first address corresponding to the first web-based store;redirecting the access request to the first web user interface;loading one or more three-dimensional scenes corresponding to the first web user interface, wherein the one or more three-dimensional scenes are based, at leastin part, on the at least one design selection by an admin of the first web-based store; andproviding a representation of the first web user interface to the user.