Progressive Web Applications (PWA) Challenge: Text Editor
This is a challenge involving the use of Progressive Web Applications (PWA) to create a text editor application that runs in the browser.
GIVEN a text editor web application,
When I open my application in my editor, then I should see a client server folder structure.
When I run npm run start from the root directory, then I find that my application should start up the backend and serve the client.
When I run the text editor application from my terminal, then I find that my JavaScript files have been bundled using webpack.
When I run my webpack plugins, then I find that I have a generated HTML file, service worker, and a manifest file.
When I use next-gen JavaScript in my application, then I find that the text editor still functions in the browser without errors.
When I open the text editor, then I find that IndexedDB has immediately created a database storage.
When I enter content and subsequently click off of the DOM window, then I find that the content in the text editor has been saved with IndexedDB.
When I reopen the text editor after closing it, then I find that the content in the text editor has been retrieved from our IndexedDB.
When I click on the Install button, then I download my web application as an icon on my desktop.
When I load my web application, then I should have a registered service worker using workbox.
When I register a service worker, then I should have my static assets pre cached upon loading along with subsequent pages and static assets.
When I deploy to Heroku, then I should have proper build scripts for a webpack application.
Instructions used in the terminal to run:
npm run build
npm run start:dev
References:
Used Drew's Module 19 Challenge Speedrun video for reference: