Skip to content
This repository has been archived by the owner on Apr 19, 2021. It is now read-only.

gilmoreg/referendus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

referendus

A Thinkful Node Capstone Project by Grayson Gilmore.

See the live site here.

Screenshots

referendus-screenshots

Summary

Referendus allows you to store academic references (either articles, books, or websites), choose which of the major citation formats you require, and copy them in rich text to the clipboard, ready to paste into your own work. Users can tag references and then search and copy only those references with that tag. The site also saves your choice of format for the next time you log in. Creating accounts and signing in and out is quick and easy.

Technical

  • This is a full stack web app.
  • The server side uses Node, Express, MongoDB and Passport.
    • API functions are tested with Mocha and Chai.
    • Authentiction is session-based and persistence stored.
    • Passwords are encrypted with bcrypt.
    • The user's format choice is stored in LocalStorage.
  • The browser side uses HTML5, ES6 Javascript, and JQuery.
  • Additionally, the site uses:
  • Demo is hosted on Amazon Lightsail.

Deployment

  • Follow instructions here for AWS Lightsail deployment.
  • Create a file at project root called variables.js with the following content:
module.exports = {
  DATABASE_URL: 'mongodb://<MONGO USERNAME>:<MONGO PASSWORD>@<MONGO URL>:<MONGO PORT>/referendus',
  PORT: 3000,
  TEST_PORT: 5000,
};
  • Globally install forever and nodemon:
    npm install -g forever nodemon
  • Run npm start

Development Roadmap

  • Implement the ability to autofill fields for a new reference given an ISBN or DOI.
  • Sorting reference lists