https://github.com/brendel-group/mission_db

Application to work with and organize Polybot's missions

https://github.com/brendel-group/mission_db

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary
Last synced: 9 months ago · JSON representation

Repository

Application to work with and organize Polybot's missions

Basic Info
  • Host: GitHub
  • Owner: brendel-group
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 6.76 MB
Statistics
  • Stars: 2
  • Watchers: 3
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

Mission Explorer

Documentation

Prerequisites

Before setting up the project, ensure that you have the following installed on your system:

Clone the Repository

sh git clone https://github.com/brendel-group/mission_db.git cd mission_db

Install Dependencies

Backend Setup

To compile opencv-python with the support for h264 codec some system packages are required:

In Ubuntu:

bash sudo apt install cmake gcc g++ python3-dev libavcodec-dev libavformat-dev libswscale-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libgtk-3-dev x264 libx264-dev

In Windows:

  • install cmake

both:

sh cd backend pip install -r requirements.txt This will install all required python packages and compile opencv-python which may take up to 30 minutes.

Frontend Setup

sh cd frontend npm install

Database Setup

We are using postgreSQL for our database, so please make sure that you have it installed. Setting up your database can either be done in the PostgreSQL shell or in the pgAdmin GUI:

PostgreSQL shell:

  • access the shell: sh sudo -u postgres psql`
  • create a new server and user: sh CREATE USER <username> WITH SUPERUSER PASSWORD <password>;
  • create a new database: sh CREATE DATABASE <db_name>;

pgAdmin GUI

  • expand the desired server and PostgreSQL insallation
  • rightclick the databases section and click on create

Environment Variables

Create a .env file in the backend/backend directory and configure the required environment variables. Refer to the following template:

sh DATABASE_URL=postgres://username:password@localhost:5432/db_name SECRET_KEY=your_secret_key # django secret key

Create an user

For authentication purposes, you need to create a user: sh cd backend python cli.py user add --name <username> You will then be asked to define your password and confirm it afterwards. These credentials will then be used when loggin in.

Set cookie domain

In order that logging in on the frontend also authenticates you to access the database, we need to set the cookie domain accordingly. You can either set an environment variable COOKIE_DOMAIN in the previously created .env file, or change the default value of the COOKIE_DOMAIN variable in the backend/backend/settings.py file. If you are using the mission explorer locally, the domain should be localhost, if it's deployed externally, it should be the corresponding domain.

Using the application

Syncing your local mission files with the database

In order to synchronise your local files with the database, first, you have to save the files in the backend/media folder. Then you'll need to start the CLI: sh cd backend python cli.py sync

Start the Application

Start Backend

sh cd backend python manage.py runserver

Start Frontend

sh cd frontend npm run build npm start

Using the application

Go to the URL provided after running npm start and login using the credentials you have created in the CLI.


This guide should help you get the project up and running quickly. If you encounter issues, check the respective README files in the documentation.

Owner

  • Name: brendel-group
  • Login: brendel-group
  • Kind: organization

GitHub Events

Total
  • Issues event: 154
  • Delete event: 104
  • Issue comment event: 110
  • Public event: 1
  • Push event: 340
  • Pull request review comment event: 61
  • Pull request event: 194
  • Pull request review event: 255
  • Create event: 99
Last Year
  • Issues event: 154
  • Delete event: 104
  • Issue comment event: 110
  • Public event: 1
  • Push event: 340
  • Pull request review comment event: 61
  • Pull request event: 194
  • Pull request review event: 255
  • Create event: 99

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 64
  • Total pull requests: 80
  • Average time to close issues: 11 days
  • Average time to close pull requests: 3 days
  • Total issue authors: 5
  • Total pull request authors: 7
  • Average comments per issue: 0.31
  • Average comments per pull request: 0.76
  • Merged pull requests: 69
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 64
  • Pull requests: 80
  • Average time to close issues: 11 days
  • Average time to close pull requests: 3 days
  • Issue authors: 5
  • Pull request authors: 7
  • Average comments per issue: 0.31
  • Average comments per pull request: 0.76
  • Merged pull requests: 69
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • SamuABC (25)
  • DerSimi (25)
  • pascal260303 (15)
  • sh1negg (7)
  • KageKrito (6)
Pull Request Authors
  • DerSimi (31)
  • SamuABC (28)
  • pascal260303 (22)
  • sh1negg (7)
  • KageKrito (7)
  • mkiefel (5)
  • s-rappold (3)
Top Labels
Issue Labels
Frontend (44) Backend (18) Bug (11) CLI (10) Details (9) Environment (7) Tags (6) Topics (5) Basic (1)
Pull Request Labels
Frontend (51) Backend (23) CLI (18) Environment (10) Bugfix (10) Topics (6) Details (4) Tags (2) Dataset (2) Bug (1) Basic (1)

Dependencies

.github/workflows/main.yml actions
  • actions/checkout v4 composite
  • astral-sh/ruff-action v1 composite
frontend/Dockerfile docker
  • base latest build
  • node ${NODE_VERSION}-slim build
frontend/package-lock.json npm
  • 816 dependencies
frontend/package.json npm
  • @remix-run/dev ^2.15.0 development
  • @types/react ^18.3.12 development
  • @types/react-dom ^18.3.1 development
  • @typescript-eslint/eslint-plugin ^8.16.0 development
  • @typescript-eslint/parser ^8.16.0 development
  • eslint ^9.15.0 development
  • eslint-import-resolver-typescript ^3.6.3 development
  • eslint-plugin-import ^2.31.0 development
  • eslint-plugin-jsx-a11y ^6.10.2 development
  • eslint-plugin-react ^7.37.2 development
  • eslint-plugin-react-hooks ^5.0.0 development
  • postcss ^8.4.49 development
  • postcss-preset-mantine ^1.17.0 development
  • postcss-simple-vars ^7.0.1 development
  • typescript ^5.7.2 development
  • vite ^5.4.11 development
  • vite-tsconfig-paths ^5.1.3 development
  • @mantine/core ^7.14.2
  • @mantine/hooks ^7.14.2
  • @remix-run/node ^2.15.0
  • @remix-run/react ^2.15.0
  • @remix-run/serve ^2.15.0
  • @tabler/icons-react ^3.22.0
  • isbot ^5.1.17
  • react ^18.3.1
  • react-dom ^18.3.1
  • remix-auth ^4.0.0
  • remix-auth-form ^3.0.0
requirements.txt pypi
  • argcomplete *
  • django *
  • django-colorfield *
  • django-cors-headers *
  • django-environ *
  • djangorestframework *
  • pre-commit *
  • psycopg2-binary *
  • pyreadline3 *
  • ruff *