Skip to content

grace-anderson/text-editor

Repository files navigation

Just Another Text Editor (JATE)

License: MIT

Description

The Just Another Text Editor app is a single-page full-stack text editor application that meets Progressive Web App (PWA) criteria. Additionally, it features a number of data persistence techniques that serve as redundancy in case one of the options is not supported by the browser. The app also functions offline.

Just Another Text Editor app implements methods for getting and storing data to an IndexedDB database using the IndexedDB API (often abbreviated to IDB). The IDB package is a lightweight wrapper around the IndexedDB featuring a number of methods for storing and retrieving data.

The app is deployed to Heroku, with the code available on GitHub

Table of Contents

Technologies

This application uses the following technologies:

Dependencies

Dev dependencies

Deployment

Usage

  • Access Just Another Text Editor app via its Heroku url
  • See Demo for more detail about using the app.

Functionality

Just Another Text Editor app provides the following functionality.

  • You can create notes or code snippets with or without an internet connection
  • The text you enter when the app is online is available when the app goes offline and vice versa
  • You can retrieve notes or code snippets which are saved in the browser using the indexDB database
  • You can choose to install the app locally (see Demo) or simply continue to use in the browser

Installation

To install and run the Just Another Text Editor application code locally,

  • Download or clone the code from the GitHub repository
    • run npm run install in the root directory of the project to install dependencies
    • run npm run build in the root directory of the project to build the application
    • run npm run start from the root directory to start the server
    • navigate to your browser, and open the app locally with url localhost:3000
  • See the comments in the package.json file for more detail about the scripts to install, build and run the application
  • See the Demo section below for more detail about using the app

Contribution Guidelines

  • Contributions are welcome.
  • The code is located in this GitHub repo
  • To contribute, open a new issue describing your proposed enhancement or fix.
    • Before contributing, browse through open issues to see if your issue already exists or if there is an issue or enhancement you could to solve.
    • If you're a newbie dev, start contributing by looking for issues labelled "good first issue"
  • It is good practice to set up your project repository as an "upstream" remote and synchronize with the project repository
    • Don't update the main branch. Rather create your own branch using a brief descriptive name and make your changes there
  • You can create pull requests, but only admins can review and merge.
    • Be nice to your reviewer by adding adding a plain English explanation of your pull request and how your updates addresses the issue/s or enhancements
  • Also see the GitHub Community Guidelines

Demo

TODO - add demo

  1. Just Another Text Editor (JATE) opened in the browser at deployed Heroku url

Demonstration of JATE being used in the browser.

  1. JATE being installed locally, showing manifest window and shortcut.

Demonstration of JATE being installed locally.

  1. Demo of JATE retaining data when switching between on and offline

Demonstration of JATE retaining data when switching between online and offline

  1. Screenshot of indexDB showing data retained when app offline

Demonstration of JATE indexDB database retaining data when data entered online and offline

  1. Screenshot of JATE's app manifest window

Screenshot of JATE's manifest

  1. Screenshot of JATE's service workers window

Screenshot of JATE's service workers

License

© 2022 Helen Anderson

This project is licensed under the MIT License.

About

A text editor that runs in the browser that will also function offline

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors