Skip to content

A journaling and note-taking web app that categorizes your notes and makes them searchable by topic

Notifications You must be signed in to change notification settings

danrounds/JourNLP

Repository files navigation

JourNLP

JourNLP is a journaling/note-taking web app that automatically categorizes your notes for you, using Natural Language Processing. Type in your notes, submit, and JourNLP categorizes them with NLP. Identical topics are grouped together, and data from your notes can be visualized.


Platforms/libraries/frameworks used

Sidebar patterns, courtesy subtlepatterns.com and dinpattern.com. Fonts and data visualization courtesy Google.


API

The API here is RESTful. Most access involves authentication via JWT; the exceptions are account creation (POST /api/user_account) and log in (POST /api/log_in). All request/response bodies are of type application/json.

The API endpoints for this project broadly do two things:

  1. CRUD notes entries—that is (1) make posts, (2) access post data, (3) update posts, and (4) delete posts data
  2. CRUD user accounts—i.e., (1) create user accounts, (2) get access to all the data associated with a user account, (3) change a user password, and (4) delete an account and all associated data

API Endpoints

API endpoints described here.


Architectural note

We use the WebWorker Threads library to create a relatively future-proof, threaded implementation of our NLP categorization. That is, once Node rolls out Worker Threads beyond the experimental stage, the existing code should be portable, without too much effort.


Screenshots

Splash page

splash page


Write listings; JourNLP categorizes them

write listings


Click the categories to view your entries with those same categories

categories


View a visual representation of the topics you've written about

visualization

About

A journaling and note-taking web app that categorizes your notes and makes them searchable by topic

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published