This project and everyone participating in it is governed by the MLVET Code of Conduct. By participating, you are expected to uphold this code.
One of the most important things you can do is report bugs. Please reference how to report a bug and follow the issue templates when adding new bugs.
mlvet
├── assets
│ ├── fonts holds fonts to be used in the project
│ ├── icons holds app icons
├── mocks holds file with mock runtime object for testing
├── release
│ ├── app holds files necessary for building
│ └── build packaged app will be stored here after running `yarn package`
│
├── src
│ ├── collabServer holds files necessary to run the collab server (collaborative editing)
│ ├── collabTypes holds types for collab types
│ ├── expressServer holds files for express server (server responsible for streaming video to the frontend)
│ ├── main holds files for the electron backend
│ ├── renderer holds files for the react frontend
│ ├── transcriptProcessing holds files used by both the frontend and backend for transcription processing
│ └── vosk holds files used by both the frontend and backend for local transcription (vosk)
└── tools holds files for code gen
To get your development environment set up
-
Install the following dependencies:
node 16
,yarn
-
Clone the repository and cd into the directory
repos> git clone https://github.com/MLVETDevelopers/mlvet.git repos> cd mlvet
-
Install node dependencies
mlvet> yarn mlvet> cd src/collabServer/ m/s/collabServer/> yarn m/s/collabServer/> cd ../../release/app m/r/app/> yarn
-
Running the tests
mlvet> yarn test
-
Start the app in the
dev
environmentyarn start
- Create a PR into
develop
with the version inpackage.json
incremented - Follow Semantic Versioning - Create a new branch off
develop
(eg.sync-dev-with-uat
) and pull inuat
- Open a PR to merge
sync-dev-with-uat
intodevelop
- Get the PR approved and merge into
develop
- Open a PR to merge
develop
intouat
- Get the PR approved and merge into
develop
- The GitHub actions will create a new release
- Open the release and edit it, add release notes and remove the macOS ARM dmgs
mlvet.app is managed in a separate repo.
To create .deb
and .rpm
releases you must build the app on a linux distribution based on the distribution you want to target.
Steps to build your .deb
/.rpm
- Replace the
AppImage
target with you target of choice in themlvet/package.json
.
"linux": {
"target": [
- "AppImage"
+ "deb"
],
"category": "Development",
-
Download the dependencies mentioned earlier.
-
Then run
yarn package
, it might fail the first time (which is why we have not included it in our build process), just run it again and it'll work.
Thank you to all the people who have already contributed to MLVET!