Anyone providing assistance to the future of this project is considered a contributor. If you wish to play a part in this project, then thank you! This document outlines some of the ways to help.
The easiest way to communicate is via GitHub issues. Please search for similar issues regarding your concerns before opening a new issue. For everything else we ask to chat about it on GitHub Discussions or Slack.
You'll need the following:
- Git
- Node.JS (If you need to manage multiple Node.JS versions, use a node version manager to install)
- Source code of
presenterrepo
E.g.
gh repo fork shabados/presenter --clone=true- Run
npm iin the root directory. npm start
The above command spins up development servers. It launches a frontend on port 3000 and backend on port 42425. Any changes to the backend will result in a restart. A manual restart can be triggered by entering rs into the terminal.
Produce a tree-map of the bundle and look for potential bloat with at least one npm run build and then as many npm run analyze commands.
Electron-builder is used to generate binaries. Run npm run pack for the binaries to test on your platform, and npm run dist to build an installer. The production builds launch a frontend server on port 1699 and backend server port 42424.
The app folder contains the Electron wrapper, the backend Node application, and the frontend React application.
The frontend is using create-react-app, websockets for synchronizing clients, and API for search.
The backend is using proposed ES+ modules with the esm shim module.
Please see our docs for coding guidelines.
Scopes
- backend
- frontend/controller
- frontend/overlay
- frontend/presenter
- frontend/settings
Your contributions to open source (large or small!) make great projects like this possible. Thank you for taking the time to participate in this project.