The project I currently work on uses Vue.js and Element UI for the frontend.
We are building a system for managing documents with Django + DRF backend.
Users can upload their documents (mostly .docx/.pptx/.pdf formats) and also want to preview them. The major constraint for the application is no access to the Internet (it will work on the local network only) and, ideally, preview must happen on the frontend.
How can I achieve this? I've tried to search for libraries that can do this but to no success.
Related
We have built a little search and list results application using Vue CLI / and REST on the backend. It is working well and addresses a common need within our organization. It seems like we should be able to take the 'packaged'/deployed version of it and give instructions to other websites within our organization to include it on their website. Similar to how google maps and others have instructions to copy and paste a snippet of code into your web page. Any suggestions on how to go about that for a Vue.js 3 application?
I am trying to load a csv file in the Cumulocity -> Administration - > Management - > File Repository. My objective is to access the file contents in the HTML widget and show the data in tabular or chart format.
I tried using the fetch() method to use csv file url , but it was not able to fetch the file. The file I believe has been locally stored into the Cumulocity platform now. How can I access the file via fetch().
You are trying to abuse the HTML widget for something it wasn't designed for.
Instead of hacking such logic into the HTML widget you should just extend the Cockpit application with your own widget which is honestly not much more difficult using the WebSDK. https://cumulocity.com/guides/web/introduction/
There is a XSRF protection to prevent exactly what you are currently trying: Bringing in custom javascript code into the live application and trying to access the platform API by "hijacking" the cookies of the logged in user (and you would either need the cookies or hardcode some credentials as you cannot access the API unauthenticated).
If you use the SDK there is even a proper Angular service in order to fetch the file for the API.
I want to write a PWA app (to run on Android and Windows 10) working with user's files and photos on OneDrive. I need to store some metadata and I prefer those to be inaccessible to the user.
What are my options?
OneDrive approot special folder is normal folder visible to the user.
I do not want to store the data locally on the device, as I want the app to be run on multiple devices.
I cannot use Windows 10 UWP roaming app data, as they would sync between Windows 10 devices, but not to Android devices.
I do not want to store the data at the PWA's backend, as it would need creating an extra user account. I want the user to log in to their MS Account to access their OneDrive, and to create another account for storing metadata. I prefer the app to be 100% client side.
Are there any other options I missed? I would prefer creating some hidden folder on OneDrive accessible by the app, but by the user. OneDrive does not seem to have such functionality, at least if I read it's API docs properly.
Depending on your exact use case you may want to check out Microsoft Graph:
https://developer.microsoft.com/en-us/graph
Microsoft Graph is an cross-device experiences platform and available for nearly all platforms. Within the Microsoft Graph you can use Activities to share metadata between different devices: https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/api-reference/v1.0/resources/project_rome_overview.md
There is also an demo project on Github of an PWA with usage of the Microsoft Graph:
https://github.com/boyofgreen/MSGraphPWA
There's a feature in Angular Universal that allows you to pre-render pages at build-time. Can this be used to pre-render all your pages and run Angular Universal without a server?
Once html pages have been pre-rendered using angular universal (using nodejs server or asp.net core server), you can use any CDN to serve the pre-generated html.
See https://universal.angular.io/overview/
Edit: have a look at the starer kit
https://github.com/angular/universal-starter
Basically, you can reuse the prerender.js file which will write the rendered html files (for specified static routes) to the dist/browser folder, or wherever you want to. This is that folder that you deploy to a static host after
Well, you're always going to need to have a server somewhere in the equation: the only question is how much you have to set it up yourself versus how much can the current crop of tools and technologies do it for you.
In this talk from Node Summit Steven Fluin from Google talks about Firebase at the end. Pay attention to the bit about 'cloud functions' (at about 20 mins). Your Angular app will be rendered on the server using Firebase cloud functions. When a user interacts with your app, some JS is run to figure out what to send down (from the Firebase server) to the user. "You don't need to set up a server at all; everything is running in Firebase."
I haven't used Firebase myself - I'm using Angular Universal, which has a Node.js server as you know - but this sounds very nice. I found setting up Angular Universal really tricky (but got there in the end).
I'm developing an app on Google chrome which could be able to read and write files to arbitrary folders on the user’s hard drive, such as their My Pictures or My Documents folder.
I want my app to has its one folder, like "Users/Username/App", so users could be able to access some of the data, created and edited by the app. How can I do this?
I read the book "Using the HTML5 Filesystem API", so I know it's actually not possible with HTML5 Filesystem API alone. Same thing was possible by opera 11, 12. (see: http://dev.opera.com/articles/view/file-i-o-api-for-widgets/). Chorome mediaGalleries API do same things but just for media file but I want to use html, xml and office files
It doesn't sound like you've looked at the list of Chrome App APIs. Have you? Among them is the fileSystem API, which is evolving quickly to include directory access.