Skip to content

lrondan/SafeLab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧪 SafeLab - Laboratory Management System

SafeLab is a web-based laboratory management system built with Django, designed to streamline and centralize the administration of university laboratories. It provides tools for managing equipment, users, reservations, and laboratory activities in an efficient and secure way.


🚀 Features

  • 🔐 User authentication and role-based access (Admin, Staff, Students)
  • 🧾 Laboratory and equipment management
  • 📅 Reservation and scheduling system
  • 📊 Dashboard with real-time data and statistics
  • ⚠️ Safety tracking and incident reporting
  • 🧪 Inventory control for chemicals and materials
  • 📁 Document and protocol management

🏗️ Tech Stack

  • Backend: Django (Python)
  • Frontend: HTML, CSS, JS, Bootstrap
  • Database: SQLite (default) / PostgreSQL (recommended for production)
  • Other Tools: Django REST Framework (optional), JavaScript

📦 Installation

1. Clone the repository

git clone https://github.com/lrondan/safelab.git
cd safelab

2. Create a virtual environment

python -m venv env
source env/bin/activate  # On Windows: env\Scripts\activate

3. Install dependencies

pip install -r requirements.txt

4. Apply migrations

python manage.py migrate

5. Create a superuser

python manage.py createsuperuser

6. Run the development server

python manage.py runserver

🌐 Usage

  • Access the app at: http://127.0.0.1:8000/
  • Login using your credentials
  • Admin users can manage labs, equipment, and users
  • Students and staff can make reservations and view lab resources

📁 Project Structure

safelab/
│── manage.py
|── requirements.txt
│── config/         # Main project settings
│── apps/           # Lab management apps
│── nginx/          # Server config
│── templates/
│── static/

🔒 Security

SafeLab implements:

  • Secure authentication system
  • Role-based permissions
  • CSRF protection
  • Input validation and sanitation

Django 6.0.3 fixes two security vulnerabilities and several bugs:

  • CVE-2026-25673: Moderate Denial-of-Service (DoS) vulnerability in URLField due to inefficient Unicode normalization on Windows. The to_python() method now bypasses NFKC normalization, improving performance with large inputs.

  • CVE-2026-25674: Incorrect permissions issue on file system objects in multithreaded environments. Django no longer relies on process umasks, applying permissions directly with os.chmod() after os.mkdir().


📌 Future Improvements

  • Mobile app version
  • Advanced analytics and reporting
  • API for external integrations

🤝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request.


📄 License

This project is licensed under the MIT License.


👨‍💻 Author

Luis Alexis Rojas Rondan

Developed for university laboratory management and safety enhancement.


💡 Notes

SafeLab is designed to improve efficiency, safety, and organization in academic laboratory environments.


About

Django app for laboratory managed

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors