An open API service indexing awesome lists of open source software.

https://github.com/cliff-rosenberg/19-text-editor-pwa

A Progressive Web Application using JavaScript, Webpack and Workbox to create a simple text editor
https://github.com/cliff-rosenberg/19-text-editor-pwa

babel-webpack javascript webpack webpack5 workbox-webpack-plugin

Last synced: about 2 months ago
JSON representation

A Progressive Web Application using JavaScript, Webpack and Workbox to create a simple text editor

Awesome Lists containing this project

README

        

# 19-Text-Editor-PWA

## Table of Contents-
- [PWA Text Editor](#text-editor-pwa)
- [Table of Contents-](#table-of-contents-)
- [Licensing](#licensing)
- [Description](#description)
- [Installation](#installation)
- [Screenshots](#screenshots)
- [Usage](#usage)
- [Credits](#credits)
- [Contributing](#contributing)
- [Testing](#testing)
- [Additional Info](#additional-info)

## Licensing

[![License](https://img.shields.io/badge/license-MIT-green)](./LICENSE)

Link: [MIT License](https://opensource.org/licenses/MIT)

## Description

This project demonstrates a 'Progressive Web Application' that is realized as a single-page app. It provides a client-side data storage/persistence using the IndexedDB functions in the web browser. The 'Service Worker' functionality is accomplished by utilizing Google's Workbox libraries and tooling. The back-end server functions are provided by Node.js and Express.js

## Installation

NOTE: As of November 2022, Heroku has no "free" accounts, so the demo application has been taken offline until another suitable host can be found.

Note: *Local installation and execution can be done if desired using the scripts setup in the* `package.json` *file in the root directory of the project folder.*

## Screenshots

Main Screen:
![screenshot1](./assets/JATE-text-editor-screenshot.png)

IndexedDB storage:
![screenshot2](./assets/JATE-database-storage.png)

PWA Service Worker:
![screenshot3](./assets/JATE-service-worker.png)

Workbox cache expiration control:
![screenshot4](./assets/JATE-cache-entries.png)

## Usage

Heroku does not offer "free" accounts as of November 2022, so the demo application has been taken down until further notice.

## Credits

The following technologies were used in this project:

[Google Workbox](https://developer.chrome.com/docs/workbox/)

[Webpack v5](https://webpack.js.org/)

[Babel v7](https://babeljs.io/)

[Node.js package 'idb' for IndexedDB](https://www.npmjs.com/package/idb)

## Contributing

[Contributor Covenant](https://www.contributor-covenant.org/)

## Testing

No testing is provided.

## Additional Info

- Github: [cliff-rosenberg](https://github.com/cliff-rosenberg)
- Email: cliff459 AT icloud.com