Spacedeck, a web based, real time, collaborative whiteboard application with rich media support
 
 
 
 
 
Go to file
Thorgrimson 0c877bc20b
Update nginx_setup.md
2021-03-07 22:16:34 +01:00
.github Add ISSUE_TEMPLATE.md (#139) 2020-11-23 12:12:54 +01:00
.vscode add vscode launch configuration 2021-02-06 00:22:36 +01:00
config Merge pull request #158 from arillo/feature/default-color-via-config 2021-02-06 00:14:22 +01:00
docs Update nginx_setup.md 2021-03-07 22:16:34 +01:00
helpers fix double % 2021-02-14 12:54:14 +01:00
integrations/wordpress/plugins/spacedeck integrations: first version of Spacedeck integration for WordPress 2020-05-11 18:58:02 +02:00
locales Merge pull request #144 from Mejans/patch-1 2021-02-06 01:14:43 +01:00
middlewares space: fix realtime artifact media conversion feedback for video, audio 2020-11-21 16:38:17 +01:00
models Merge branch 'mnt' into config/disable-db-logs 2021-02-06 00:17:46 +01:00
public set video to left: 0 2021-02-06 01:25:07 +01:00
routes space: fix realtime artifact media conversion feedback for video, audio 2020-11-21 16:38:17 +01:00
styles set video to left: 0 2021-02-06 01:25:07 +01:00
views fix double % 2021-02-14 12:54:14 +01:00
.dockerignore Add docker files (#55) 2020-05-19 22:19:43 +02:00
.gitignore add storage & .DS_Store to .gitignore 2021-02-06 00:23:01 +01:00
.tool-versions add .tool-versions file 2021-02-06 00:22:44 +01:00
Dockerfile fix #60: add ffmpeg package (#66) 2020-06-24 15:26:34 +02:00
Gulpfile.js add gulp clean css to minify css 2021-02-06 01:11:54 +01:00
LICENSE initial commit. 2017-04-07 01:29:05 +02:00
README.md Update README.md 2021-03-07 21:30:00 +01:00
docker-compose.yml Add docker files (#55) 2020-05-19 22:19:43 +02:00
package.json add gulp clean css to minify css 2021-02-06 01:11:54 +01:00
spacedeck.js Make host and port configurable (#94) 2020-09-16 11:20:13 +02:00

README.md

Spacedeck Open

Spacedeck 6.0 Screenshot

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).

The spacedeck.com online service was shut down on May 1st 2018. We decided to open-source Spacedeck to allow educational and other organizations who currently rely on Spacedeck to migrate to a self-hosted or local version.

MNT Research GmbH has restarted development of Spacedeck Open in 2020.

We appreciate filed issues, pull requests and general discussion.

Features

  • Create virtual whiteboards called Spaces with virtually unlimited size
  • 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 in realtime with teammates, students or friends
  • Share Spaces on the web or via email
  • Export your work as printable PDF or ZIP (currently being fixed, stay tuned)

Use Cases

  • Education: Virtual classwork with multimedia
  • Creative: Mood boards, Brainstorming, Design Thinking
  • Visual note taking and planning

Requirements, Installation

Spacedeck requires:

  • Node.js 10.x: Web Server / API. Download: https://nodejs.org
  • Graphicsmagick. On non-Linux, Download: http://www.graphicsmagick.org/ On Linux, install via package manager.
  • Optionally ffmpeg, audiowaveform and ghostscript. See "Optional Dependencies" below.

To run Spacedeck, you only need Node.JS 10.x.

To install all node dependencies, run (do this once) after cloning the repository:

npm install

Configuration

See config/default.json. Set storage_local_path for a local sqlite database or storage_region, storage_bucket, storage_cdn and storage_endpoint for AWS S3. mail_provider may be one of console or smtp. Also, omit a trailing / for the endpoint.

Disable DB logs

...
"db_logs_disabled": true
...

Configure color swatches

Add a custom array of swatches to your config/default.json.

You should include the swatch transparent (rgba(0,0,0,0)) so users can remove the color applied.

Configure default colors

You can define text, stroke and fill color in your config/default.json.

You also should include the default colors in your custom swatches palette.

...
"spacedeck": {
  "default_text_color": "#E11F26",
  "default_stroke_color": "#9E0F13",
  "default_fill_color": "#64BCCA",
  "swatches": [
    {"id":8, "hex":"#000000"},
    {"id":30, "hex":"rgba(0,0,0,0)"},
    {"id":31, "hex": "#E11F26"},
    {"id":32, "hex": "#9E0F13"},
    {"id":33, "hex": "#64BCCA"},
    {"id":34, "hex": "#40808A"},
    {"id":35, "hex": "#036492"},
    {"id":36, "hex": "#005179"},
    {"id":37, "hex": "#84427E"},
    {"id":38, "hex": "#6C3468"},
    {"id":39, "hex": "#F79B84"},
    {"id":40, "hex": "#B57362"},
    {"id":41, "hex": "#E7D45A"},
    {"id":42, "hex": "#ACA044"}
  ]
}
...

Run (web server)

node spacedeck.js

Then open http://localhost:9666 in a web browser.

Optional Dependencies

For advanced media conversion:

Data Storage

By default, media files are uploaded to the storage folder. The database is stored in database.sqlite by default.

Other databases (Not officially supported)

Postgres

Add the pg module and change the config/default.json to

"storage_dialect": "postgres",

Adapt the other values as needed

"storage_host": "localhost",
"storage_database": "spacedeck",
"storage_username": "username",
"storage_password": "password",

Run with Docker

  • configure config/default.json
  • configure volumes section inside docker-compose.yml
    • point to database.sqlite on the host system
    • touch database.sqlite if it not exists
    • point to storage/ on the host system
    • mkdir storage/ if it not exists
  • start the container with sudo docker-compose up -f docker-compose.yml -d --build

Hacking

To rebuild the frontend CSS styles:

gulp styles

License

The Spacedeck logo and brand assets are registered trademarks of Spacedeck GmbH. All rights reserved.

Spacedeck Open source code 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-2018 Lukas F. Hartmann, Martin Güther
Icons and original CSS design copyright by 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/>.