Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BioTrack

Description

TODO (pull from final report?)

Requirements

  • Python 3.10+
  • Node.js 18+
  • MySQL 8.0+

Setup

1. Clone the repository

git clone https://github.com/swu955/biotrack.git
cd biotrack

2. Backend

Create and activate a virtual environment:

macOS/Linux:

python3 -m venv .venv
source .venv/bin/activate

Windows:

python -m venv .venv
.venv\Scripts\activate

Install dependencies:

pip install -r backend/requirements.txt

Create a .env file inside the project root directory:

DATABASE_URL=mysql+pymysql://biotrack_user:<password>@localhost:3306/biotrack

3. MySQL

Make sure MySQL is running, then create the database and user:

macOS (Homebrew):

brew install mysql
brew services start mysql
mysql_secure_installation  # optional but recommended
mysql -u root -p

Linux (Ubuntu/Debian):

sudo apt update
sudo apt install mysql-server
sudo systemctl start mysql
sudo mysql -u root

Windows:

Download and run the MySQL Installer. During setup, choose "Developer Default" and set a root password. Then open MySQL Workbench or the MySQL Command Line Client.

Then run the SQL:

CREATE DATABASE biotrack;
CREATE USER 'biotrack_user'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON biotrack.* TO 'biotrack_user'@'localhost';
FLUSH PRIVILEGES;

Running the app

make run

On first startup, the backend will automatically create all tables and seed animal, question, and badge data from the JSON files in backend/data/.

Note for Windows users: make may not be available by default. You can install it via Chocolatey (choco install make), or run the backend and frontend commands manually — check the Makefile for the exact commands.

Running the tests (TBD)

pytest

Credits

TODO (reference group 33)

About

Full-stack educational web app for wildlife biology built with React + FastAPI + MySQL. Features role-based auth (student/teacher/admin), animal quizzes, flashcards, live multiplayer BioQuiz, classroom management, real-time leaderboards, a chatbot, and an admin dashboard with feedback analytics.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages