πQuick start
Installation of the app
How to download and install The MEDiml Application
Below are tutorials for downloading and installing the app on various operating systems.
These tutorials are currently outdated and will be updated soon. In the meantime, please follow the instructions below.
This tutorial is for MEDomics (the parent app) and will be updated soon, but the instructions remain the same. However, please use the following link to download the assets for the MEDiml-app: MEDiml-app release.
The MEDiml application architecture
MEDiml follows the same architechture of its mother application. This visual guide is designed to support new contributors in understanding the applicationβs structure, streamlining the integration of new features, and aiding efficient navigation through the codebase.
Contribute to MEDiml-Appπ±
1. Prerequisites
1.1 Installation of MongoDB Community Edition
Do not install MongoDB as a service.
You do not have to install MongoDB Compass.
You do not have to install mongosh.
Do not forget to add MongoDB binaries to the System PATH.
Install MongoDB on Linux (Ubuntu) - Install the latest version of MongoDB.
Install MongoDB Database Tools on Mac - Install with Homebrew.
1.2 Installation of MongoDB database tools
2. Node.js and NVM Setup
2.1 Installation of Nvm
2.2 Installation of npm/node.js
Be careful, the next steps are different depending on the user's privilege.
For members of the MEDomicsLab GitHub Organization.
3. Clone the Repository
Using HTTPS:
Using SSH:
4. Backend Setup (Go)
4.1 Install Go
Download the latest stable release of Go from the official website: https://golang.org/dl/
Follow the installation instructions for your operating system.
4.2 Setup of environment
Execute these commands in the terminal:
Windows:
Linux/MacOS:
After, close all your terminals because these commands will take effect on the initialization of any terminal
4.3 Verify installation
In a new terminal, run:
If Go is installed correctly, you should see the version number printed to the console.
4.4 Setup for the application
Next, build the executable:
Rebuild after any .go file modification.
5. Create Your Own Branch
Always branch from develop, and ensure you have the latest changes:
6. Make Changes
Follow the project structure
Keep commits small and descriptive
Commit naming conventions:
feat:new featurefix:bug fixdocs:documentation changesrefactor:code restructuringtest:tests added/updated
7. Push Changes
8. Create a Pull Request
Go to the MEDiml-app GitHub Pull Requests page
Click New Pull Request
Target branch:
developCompare branch:
your-branch-name
9. Pull Request Guidelines
Ensure:
β Code compiles and runs
β No console errors
β Proper formatting
β Tests pass (if applicable)
β Clear PR description:
What was done
Why was it done
Screenshots (if UI changes)
10. Code Review Process
Address reviewer comments
Push updates to the same branch
Keep discussion professional and concise
11. After Merge
For external users
π± Contributing via Fork (Common Practice)
This workflow is recommended for external contributors.
3. Fork the Repository
Go to the official repo
Click Fork
Clone your fork:
4. Add Upstream Remote
Verify:
5. Create a Feature Branch
Always branch from develop:
6. Backend Setup (Go)
6.1 Install Go
Download the latest stable release of Go from the official website: https://golang.org/dl/
Follow the installation instructions for your operating system.
6.2 Setup of environment
Execute these commands in the terminal:
Windows
Linux/MacOS
After, close all your terminals because these commands will take effect on the initialization of any terminal
6.3 Verify installation
In a new terminal, run:
If Go is installed correctly, you should see the version number printed to the console.
6.4 Setup for the application
Next, build the executable:
Rebuild after any .go file modification.
7. Make Changes
Follow the project structure
Keep commits small and descriptive
Commit naming conventions:
feat:new featurefix:bug fixdocs:documentation changesrefactor:code restructuringtest:tests added/updated
8. Sync with Upstream
Before pushing:
9. Push Changes
10. Create a Pull Request
Go to your fork on GitHub
Click Compare & Pull Request
Target branch:
develop(base repo)
11. Pull Request Guidelines
Ensure:
β Code compiles and runs
β No console errors
β Proper formatting
β Tests pass (if applicable)
β Clear PR description:
What was done
Why was it done
Screenshots (if UI changes)
12. Code Review Process
Address reviewer comments
Push updates to the same branch
Keep discussion professional and concise
13. After Merge
Running the Electron App
Launch the Electron application (desktop app window) and start the required development servers (frontend/backend):
Worth noting
On Windows, if you encounter error messages when running npm installrelated to tensorflow .dll files missing, revert your node version by following these steps:
Add to the PATH variable the path to your new node placing it higher than the old node.
Test your node version using:
node --version
MongoDB configuration
MEDiml-app uses port 54017 as the default MongoDB connection port. For database visualization and management, we recommend using MongoDB Compass, the official GUI client from MongoDB.
Key Details:
Default Port:
54017Recommended Client: MongoDB Compass
Connection String Format:
mongodb://localhost:54017/
Modify startup settings
Go to file
medomics.dev.jsHere is a description of the Object:
Testing Production Builds
Build & Run
This compiles the application code and packages the Electron app into an executable format:
The built app will be located in the build/dist folder.
Now that the app is live and running, it is time to learn how to use the interface. See you on the next page. π
Last updated