Getting started with development
Please review the contributing guidelines first.
Fork then clone the repo:
git clone email@example.com:<USERNAME>/spectacle-editor.git
Install npm dependencies:
cd spectacle-editor && npm install
Run Spectacle Editor in dev mode:
npm run dev
npm run check
The initial setup of this project is based on electron-react-boilerplate.
Note: Instead of actions, components call methods on the store(s) passed down via context.
Spectacle Editor leverages React-Motion for drag and drop functionality.
The elements that can be added to slides and edited include:
- Plotly chart
- Shape (V2)
- MathJax (V2)
Each element will have a corresponding property menu that is available when an element of that type is selected.
The canvas is the editable area that displays the current slide. Elements can be dropped on the canvas, repositioned and formatted.
The slide list displays all slides in the presentation and allows for changing the selected slide and reordering existing slides.
This is where options for the selected element will appear. The menu will depend on the type of element selected. If no element is selected a slide menu will appear.
Creating release packages
To build for Windows on MacOS, you'll need (this may take 30+ mins):
brew install wine --without-x11 brew install mono
To build for Linux on MacOS, you'll need:
brew install gnu-tar libicns graphicsmagick xz
To build and package for all platforms, run:
npm run release
Other packaging steps are:
npm run package-all npm run package-mac npm run package-win npm run package-linux