README.md 3.35 KB
Newer Older
mntmn's avatar
mntmn committed
1
2
3
4
5
6
7
8
9
10
11
12
# Spacedeck Open

This is the free and open source version of Spacedeck, a web based, real time, collaborative whiteboard application with rich media support. Spacedeck was developed in 6 major releases during Autumn 2011 until the end of 2016 and was originally a commercial SaaS. The developers were Lukas F. Hartmann (mntmn) and Martin Güther (magegu). All icons and large parts of the CSS were designed by Thomas Helbig (dergraph).

As we plan to retire the subscription based service at spacedeck.com in late 2017, we decided to open-source Spacedeck to allow educational and other organizations who currently rely on Spacedeck to migrate to a self-hosted version.

Data migration features will be added soon.

We appreciate filed issues, pull requests and general discussion.

# Features

13
- Create virtual whiteboards called *Spaces* with virtually unlimited size
mntmn's avatar
mntmn committed
14
15
16
17
18
19
20
21
22
23
24
25
- Drag & drop images, videos and audio from your computer or the web
- Write and format text with full control over fonts, colors and style
- Draw, annotate and highlight with included graphical shapes
- Turn your Space into a zooming presentation
- Collaborate and chat in realtime with teammates, students or friends
- Share Spaces on the web or via email
- Export your work as printable PDF or ZIP

# Requirements, Installation

Spacedeck uses the following major building blocks:

26
27
28
29
- Vue.js: Frontend UI Framework
- Node.js 7.x: Web Server / API
- MongoDB 3.4: Data store *(important: newer versions than 3.4 don't work yet!)*
- Redis 3.x: Data store for realtime channels, (*optional*)
mntmn's avatar
mntmn committed
30
31
32

It also has some binary dependencies for media conversion and PDF export:

33
- imagemagick, graphicsmagick, libav(+codecs, ffmpeg replacement), audiowaveform (https://github.com/bbcrd/audiowaveform), phantomjs (http://phantomjs.org/)
mntmn's avatar
mntmn committed
34

35
36
37
By default, media files are uploaded to the ```storage``` folder.

Optionally, you can use Amazon S3 for file storage. In that case you need an Amazon AWS account and have the ```AWS_ACCESS_KEY_ID``` and ```AWS_SECRET_ACCESS_KEY``` environment variables defined. For sending emails in production, Amazon SES is required.
mntmn's avatar
mntmn committed
38

39
To run Spacedeck, you need Node.JS 7.x and a running MongoDB 3.4 instance. Then, to install all node dependencies, run
mntmn's avatar
mntmn committed
40
41
42
43
44
45
46

    npm install

To rebuild the frontend CSS styles (you need to do this at least once):

    gulp styles

47
48
# Configuration

Lukas F. Hartmann's avatar
Lukas F. Hartmann committed
49
See [config/default.json](config/default.json)
50

mntmn's avatar
mntmn committed
51
52
53
54
# Run

    export NODE_ENV=development
    npm start
55
    open http://localhost:9666
mntmn's avatar
mntmn committed
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75

# License

Spacedeck Open is released under the GNU Affero General Public License Version 3 (GNU AGPLv3).

    Spacedeck Open - Web-based Collaborative Whiteboard For Rich Media
    Copyright (C) 2011-2017 Lukas F. Hartmann, Martin Güther, Thomas Helbig
    
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as
    published by the Free Software Foundation, either version 3 of the
    License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.