ladis

A database for cleaning laser tools created in a project at the Potsdam University of Applied Sciences.

https://github.com/mcnamara84/ladis

Science Score: 44.0%

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

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.4%) to scientific vocabulary

Keywords

database information laser retrieval
Last synced: 6 months ago · JSON representation ·

Repository

A database for cleaning laser tools created in a project at the Potsdam University of Applied Sciences.

Basic Info
  • Host: GitHub
  • Owner: McNamara84
  • License: gpl-3.0
  • Language: PHP
  • Default Branch: main
  • Homepage:
  • Size: 42 MB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • Open Issues: 14
  • Releases: 2
Topics
database information laser retrieval
Created 9 months ago · Last pushed 6 months ago
Metadata Files
Readme License Code of conduct Citation

README.md

PHP ^8.2 MySQL 8 Laravel 12 Bootstrap 5.3 Test Coverage

LADIS - Laser Datenbank Informationssystem

We are developing our own information system as part of the P11 laboratory. A specialist laser database is to be created for the “Restoration” department. This will be a contact point for restorers who want to find out about cleaning with a laser device. Among other things, information on the laser device, the material to be treated, the project and the location will be collected. In the first steps, we developed a data model and then tried to integrate existing information. Now the whole thing is to be implemented with code.

Features

  • Overview lists:
    • Devices
    • Institutions
    • Artifacts
    • Materials
    • Persons
    • Processes
    • Projects
  • User-friendly input forms:
    • Add new materials
    • Add new institutions
    • Add new devices
    • Add new processes
    • Add new artifacts
    • Add new projects
  • Filterable institutions list: View all institutions on a single page and filter by type (clients, contractors, manufacturers).
  • Admin Tools: Create new Accounts via UI or enter php artisan newuser <name> <email> <password> in server terminal for easy user creation.
  • Simple Search: The simple search function in the main menu allows you to quickly search for device names, institution names, ...
  • Advanced Search: The advanced search allows you to search the database for specific attributes. Currently, device and institution names as well as the features year and cooling can be searched.
  • Responsive UI: Adapats to light and dark color scheme and supports various viewport sizes.
  • Image Upload: You can upload images for your project.

Sitemap

  • Welcome (Homepage): /
    • About LADIS: /about
    • Advanced Search: /adv-search
    • Search Result: /adv-search/result
    • Institutions: /institutions/all
    • Devices: /devices/all
    • Artifacts: /artifacts/all
    • Persons: /persons/all
    • Materials: /materials/all
    • Projects: /projects/all
    • Venues: /venues/all
    • Processes: /processes/all
    • Contact Us: /contact
    • Database Statistics: /statistics
    • Legal (Rechtliches / Impressum): /impressum
    • Log-In Mask: /login
    • Account Overview: /login/home
      • Data Input Form (Eingabemaske): /login/inputform
      • New Artifact Entry: /inputform_artifact
      • New Artifact Entry [dynamic page]
      • New Device Entry [dynamic page]
      • New Institution Entry [dynamic page]
      • New Process Entry [dynamic page]
      • New Project Entry [dynamic page]
      • Report Review: /login/review
    • Privacy Policy (Datenschutzerklärung): /datenschutz
    • Terms of Use (Nutzungsbedingungen): /terms-of-use
    • User Help: /help
    • Registered User Help [dynamic page]
    • Unregistered User Help [dynamic page]

Prerequisites

System Requirements

  • PHP: 8.2 or higher

Quick Start

Follow these steps to set up the development environment:

  1. Clone the repository.
  2. Run composer install to install PHP dependencies.
  3. Run npm install to install JavaScript dependencies.
  4. Copy .env.example to .env and configure your environment variables.
  5. Run php artisan key:generate to generate the application key.
  6. Run php artisan migrate to set up the database.
  7. Run composer run-script dev to start the development server.
  8. Access the application at http://localhost:8000.
  9. Logs rotate daily. Adjust LOG_DAILY_DAYS in your .env file to change retention.

[!TIP] See Development Environment Setup for detailed instructions.

Commands for database handling

  • php artisan make:migration create_TABLENAME_table to add a new migration for adding a new table.
  • php artisan migrate:status to show which migrations have run thus far.
  • php artisan migrate --pretend to see the SQL statements that will be executed by the migrations without actually running them.
  • php artisan migrate to run database migrations.
  • php artisan migrate:rollback to roll back the last migration.
  • php artisan migrate:reset to reset all migrations.
  • php artisan migrate:fresh to reset all migrations and newly execute all migrations.
  • php artisan migrate:fresh --seed to create a fresh database and seed it with the data from the seeders.

[!TIP] Detailed information about migrations and adding new models can be found in the Wiki.

Commands for testing

  • php artisan serve to start test server for manual testing
  • php artisan test to execute the test suite.

Automated Testing (CI/CD)

In addition to local testing, our test suite runs automatically via GitHub Actions on every push and pull request. All supported PHP versions (8.2, 8.3, and 8.4) are tested to ensure compatibility across the entire supported range. This automated testing is separate from the manual testing commands above and requires no action from developers.

Production Deployment

This web application will be deployed automatically to the production server in the VPN of University of Applied Sciences Potsdam using GitHub Actions. We will inform you about the public release later.

Database Schema

  • federal_states
  • cities
  • artifacts
  • images
  • institutions
  • lenses
  • locations
  • devices
  • materials
  • venues
  • conditions
  • damage_patterns

Database Seeding

Seeders are used to populate the database with initial or sample data. To run all seeders, execute:

```bash php artisan db:seed

or

php artisan migrate:fresh --seed ```

See Commands for database handling for more information.

Available Seeders

  • DamagePatternSeeder
  • DeviceSeeder
  • InstitutionSeeder
  • MaterialSeeder
  • ProcessSeeder
  • UserSeeder

Factories

Factories automatically generate sample data for models to simplify testing and development. All models in this project have a factory.

Contributing

Contact

License

This project is licensed under the GPLv3 License - see the LICENSE file for details.

Owner

  • Name: McNamara
  • Login: McNamara84
  • Kind: user
  • Location: Potsdam

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Bach"
  given-names: "Nicolai"
  orcid: "https://orcid.org/0009-0000-0705-3322"
- family-names: "Ehrmann"
  given-names: "Holger"
  orcid: "https://orcid.org/0009-0000-1235-6950"
- family-names: "Graf"
  given-names: "Michael"
  orcid: "https://orcid.org/0009-0009-1489-7713"
- family-names: "Kisa"
  given-names: "Helin"
- family-names: "Neufeld"
  given-names: "Artur"
  orcid: "https://orcid.org/0009-0004-7693-6267"
- family-names: "Schendel"
  given-names: "Maria"
- family-names: "Widmann"
  given-names: "Paula Charlotte"
- family-names: "Wussow"
  given-names: "Maya Lea"
title: "LADIS"
version: 0.1.0
doi: 10.5880/xyz
date-released: 2025-07-10
url: "https://github.com/McNamara84/cleanup-laser-database"

GitHub Events

Total
  • Create event: 34
  • Release event: 1
  • Issues event: 35
  • Delete event: 43
  • Issue comment event: 30
  • Push event: 312
  • Gollum event: 1
  • Pull request event: 54
  • Pull request review comment event: 32
  • Pull request review event: 67
Last Year
  • Create event: 34
  • Release event: 1
  • Issues event: 35
  • Delete event: 43
  • Issue comment event: 30
  • Push event: 312
  • Gollum event: 1
  • Pull request event: 54
  • Pull request review comment event: 32
  • Pull request review event: 67

Dependencies

package-lock.json npm
  • 151 dependencies
package.json npm
  • axios ^1.8.2 development
  • concurrently ^9.0.1 development
  • laravel-vite-plugin ^1.2.0 development
  • sass ^1.56.1 development
  • vite ^6.2.4 development
  • @popperjs/core ^2.11.8
  • bootstrap ^5.3.6
composer.json packagist
  • laravel/pail ^1.2.2 development
  • laravel/pint ^1.13 development
  • laravel/sail ^1.41 development
  • mockery/mockery ^1.6 development
  • nunomaduro/collision ^8.6 development
  • phpunit/phpunit ^11.5.3 development
  • fakerphp/faker ^1.23
  • laravel/framework ^12.0
  • laravel/tinker ^2.10.1
  • laravel/ui ^4.6
  • php ^8.2
composer.lock packagist
  • 111 dependencies