MouseTube is a database designed to facilitate sharing, archiving, and analyzing raw recording files of rodent ultrasonic vocalizations following the FAIR (Findable, Accessible, Interoperable, Reusable) principles (Wilkinson et al., 2016).
We recommend creating a virtual environment to isolate the project's dependencies.
# Create a virtual environment
python3 -m venv .venv
# Activate it
# On Linux/macOS:
source .venv/bin/activateCreate a .env file at the root of the project and fill in the following variables:
DEBUG=
ALLOWED_HOSTS=
DB_ENGINE=django.db.backends.mysql
DB_ROOT_PASS=
DB_NAME=
DB_USER=
DB_PASSWORD=
DB_HOST=127.0.0.1
DB_PORT=3306
DB_SSL=TrueBefore proceeding, ensure that MariaDB is installed and running. If it's not installed, use the following commands:
# Install MariaDB (if not already done)
sudo apt-get update
sudo apt-get install mariadb-server
# Start the MariaDB service
sudo systemctl start mariadb
# Verify MariaDB is running
sudo systemctl status mariadbYou will need to install some system dependencies before installing mousetube_api:
# Install necessary dependencies for MariaDB integration
sudo apt-get install pkg-config
sudo apt-get install libmariadb-devOnce the system dependencies are installed, install mousetube_api and its Python dependencies:
pip install -e .Finally, start the Django development server:
mousetube_api runserver-
Clone the repositories:
git clone https://github.com/mouseTube/mousetube_APIv0-5.git git clone https://github.com/mouseTube/mousetube_frontendv0-5.git
-
Add a .env file in the mousetube_APIv0-5 folder as described earlier in the section "2. Create a .env file".
-
Add a .env file in the mousetube_frontendv0-5 folder with the following content:
DEBUG=true NUXT_PUBLIC_API_BASE_URL=http://127.0.0.1:8000/api
-
Navigate to the mousetube_APIv0-5 folder and run the following command to build the Docker image and start all required services:
docker compose up --build
To stop the running containers:
docker compose downTo stop and remove all containers, networks, and volumes created by Docker Compose:
docker compose down -vTo remove all unused Docker images and free up space (optional):
docker image prune -adocker image prune -a will remove all images not currently used by any container. Use it only if you're sure you don't need them anymore.
- Torquet N., de Chaumont F., Faure P., Bourgeron T., Ey E. mouseTube – a database to collaboratively unravel mouse ultrasonic communication [version 1; peer review: 2 approved]. F1000Research 2016, 5:2332 (F1000Research Link) (2016).
