1. Ben Carleton
  2. remarq

Overview

Welcome to Remarq

CC-BY-NC-SA

This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

Overview

Remarq is a simple Django-powered note-taking platform. Notes are written in Markdown using either a CodeMirror editor or a plain textbox.

Installation

Make sure the requirements in requirements.txt are satisfied. Running pip install -r requirements.txt should take care of this. In addition to the packages specified in requirements.txt, the following products are necessary:

  • Python 2.7
  • An RDBMS that Django likes (MySQL, Postgres, even Oracle if you're a sadomasochist). Remarq was developed and tested using MySQL, for whatever that's worth.
  • MongoDB (either install this yourself or use a service provider like MongoLab, etc.)
  • wkhtmltopdf - you need the correct executable for your operating system. Place it somewhere convenient.

Note: Deploying this to Heroku probably works. Or maybe it doesn't.

Create a local_settings.py file in the same directory as settings.py and define the following variables:

  • Set your database information and Mongo stuff if the defaults don't work. The default MongoEngine connect() assumes a server running on localhost listening on the default port with no access control (I know, I know). Refer to the relevant MongoEngine docs for information on supplying additional information when connecting to Mongo.
  • Set the STATIC_URL and TEMPLATE_DIRS values as needed. The TEMPLATE_DIRS path should just work as defined in settings.py without being changed but STATIC_URL will need to be changed in pretty much every case.
  • Set WKHTMLTOPDF_PATH to the location where you extracted wkhtmltopdf.

After the requirements are in place and settings.py has been appropriately modified, run the following commands from within the remarq directory:

  • manage.py syncdb - This will also ask you to create an admin user, be sure to do so.
  • manage.py migrate to take care of the South migrations.

After configuration, you will need to set up your web server and (probably) WSGI interface. Nginx and Gunicorn seem to work well.