https://github.com/cybercentrecanada/assemblyline-ui-frontend
Frontend for Assemblyline 4
https://github.com/cybercentrecanada/assemblyline-ui-frontend
assemblyline malware-analysis
Last synced: about 1 year ago
JSON representation
Frontend for Assemblyline 4
- Host: GitHub
- URL: https://github.com/cybercentrecanada/assemblyline-ui-frontend
- Owner: CybercentreCanada
- License: mit
- Created: 2020-07-01T04:53:43.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2025-04-24T13:44:17.000Z (about 1 year ago)
- Last Synced: 2025-04-24T14:45:24.385Z (about 1 year ago)
- Topics: assemblyline, malware-analysis
- Language: TypeScript
- Homepage: https://cybercentrecanada.github.io/assemblyline4_docs/
- Size: 20.7 MB
- Stars: 9
- Watchers: 2
- Forks: 9
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
README
# Assemblyline UI Frontend
This repo is dedicated for the new version off Assemblyline 4 UI. It uses React as the framework and Material UI for the visual components.
## Install dev environment pre-requisites
### Install NodeJS (Ubuntu)
Follow these simple command to get NodeJS installed
curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install gcc g++ make
sudo apt-get install -y nodejs
### Install Yarn (NPM modules manager)
curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update && sudo apt-get install yarn
### Install NPM dependencies
Go to your `assemblyline-ui-frontend` directory and type:
yarn install
### Install docker (Ubuntu)
Follow these simple commands to get Docker running on your machine:
# Add Docker repository
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
# Install Docker
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
# Test Docker installation
sudo docker run hello-world
### Install docker-compose
Installing docker-compose is done the same way on all Linux distros. Follow these simple instructions:
# Install docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# Test docker-compose installation
docker-compose --version
For reference, here are the instructions on Docker’s website:
## Configure the dev environment
### Setup Webpack for debugging behing a proxy
Create a file named `.env.local` at the root of the assemblyline-ui-frontend directory with the following content:
HOST=0.0.0.0
WDS_SOCKET_PORT=443
HTTPS=true
BROWSER=none
### Setup docker compose environment
#### Setup IP routing
Create a file in the `docker` directory named `.env`.
This file should only contain the following where `` is replaced by your dev computer IP.
EXTERNAL_IP=
#### Setup Assemblyline config file
From the `docker` directory, copy the file `config.yml.template` to `config.yml` in the same directory.
Change the `` in the newly created `config.yml`file to the IP of your dev machine.
#### Setup Assemblyline classification engine file
From the `docker` directory, copy the file `classification.yml.template` to `classification.yml` in the same directory.
Change the `enforce` value to `true` in the `classification.yml` file to turn on the classification engine.
## Launch the dev environment
### Dependencies
Go to the `docker` directory and run the following command to launch the Assemblyline DB and UI.
docker-compose up
### Frontend
Simply use the `npm start script` to launch the frontend.
### Once dependencies and frontend started
Access the dev frontend at the following link: `https://.nip.io`
## Testing
Testing is done through the `jest` framework.
To run the tests, simply use the `npm test` command. (Development dependencies should already have been installed
previously via the `yarn install` command).
NOTE: the test command will only run tests related to changed files based on git.