*UNDER CONSTRUCTION* devSnips is a markdown-based note app for software developers
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs/img
public
src
.gitignore
.netlify
README.md
package-lock.json
package.json

README.md

devSnips

devSnips is a free web-based note-taking application which allows users to create fast on-the-fly snips (code notes) in markdown and have the results be saved and returned to the user in html with correctly formatted code. All snips are inclusive to the user as to ensure the complete protection of a users data and privacy.

Before registering for the application it is recommended you know the basics of markdown.

Site Link

You may use a demo account to login and view the functionality of the app.

Username: user1
Password: testtesttest

You can view the application here.

Screenshots

Login page:

image

Registration page:

image

About page:

image

Homepage demo 1:

image

Homepage demo 2:

image

API Documentation

/api/users
POST '/' -> Requires username, password, & email. Redirects new user to homepage.

/api/auth
POST '/login' -> Requires username & password. Verifies user and redirects to homepage.
POST '/refresh' -> Requires username and userID. Refreshes auth token.

/api/snips
GET '/' -> Requires userID. Returns all user-created snips back to user.
POST '/' -> Requires title, content, and userID. Returns newly created snip.
DELETE '/:id' -> Requires snipID and userID. Deletes specified snip.

Tech Stack

  • React
  • Redux
  • ReduxForm
  • Node.js
  • Express.js
  • PostgreSQL
  • JWTs
  • Passport.js
  • CSS3

Key Parts of Project

  • PostgreSQL DB is hosted on ElephantSQL for cloud storage.
  • My API lives within my server-side code (Node/Express combo) and is hosted on Heroku.
  • I've used React for my client-side code and Redux for state management. Bundled with webpack, the client is hosted on Netlify.

NPM packages used