Skip to content
Flask and React based intranet app where you can create and share lists (e.g. shopping list, todo, ...)
JavaScript Python HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs/screenshots
jsx
memoboard
tests Using click to create the database now, updated docs to match flask 1… Jul 17, 2018
.babelrc
.gitignore
.travis.yml
LICENSE.md
README.md
codecov.yml
config.py
package.json
requirements.txt
run.py
run_tests.py
webpack.config.js

README.md

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Build Status codecov.io

MemoBoard

Single page web app to keep track of various things, like shopping lists, to dos, ... The backend is written in python using flask and flask-restful. The front end is coded around the react and redux js libraries. Ideal to run on a hobby webserver (e.g. raspberry pi).

MemoBoard main view

Installation

Installation instruction for deployment on a linux system.

Clone the repository

git clone https://github.com/sepro/MemoBoard.git MemoBoard

Set up a virtual environment

cd MemoBoard
virtualenv --python=python3 venv

Activate the environment and install packages

source venv/bin/activate
pip install -r requirements.txt

Configure MemoBoard

vim config.py

Set environmental variable (windows)

set FLASK_APP=run.py 

Set environmental variable (linux)

export FLASK_APP=run.py 

Create the database and migration

# create database
flask createdb

Note: When running this through a webservice and using SQLite, make sure the user www-data has read/write access to the file.

Run tests and run app

python run_tests.py

flask run

Check the web how to configure the webserver of your choice (tested with uwsgi and nginx) to serve memoboard. In case a sqlite database is used, make sure the file is readable and writeable by the webserver.

Front-end development

Install all packages through npm

npm install

Test (using Mocha)

npm test

Build ./memoboard/static/js/bundle.js using webpack

webpack -p

Acknowledgements

This project makes use of several python packages and javascript libraries, without these development would have been much more complicated. The favicon is from http://www.freefavicon.com/.

You can’t perform that action at this time.