{"id":24955105,"url":"https://github.com/jrie/sqstorage","last_synced_at":"2025-04-10T17:40:28.150Z","repository":{"id":37848152,"uuid":"163592178","full_name":"jrie/sqstorage","owner":"jrie","description":"A easy to use and quick way to organize your inventory, storages and storage areas","archived":false,"fork":false,"pushed_at":"2025-03-22T10:49:29.000Z","size":4089,"stargazers_count":27,"open_issues_count":10,"forks_count":19,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-22T11:30:02.298Z","etag":null,"topics":["apache","database","inventory","management","nginx","php","storage","web-application"],"latest_commit_sha":null,"homepage":"https://sqstorage.net","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jrie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"support/.htaccess","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-30T14:10:18.000Z","updated_at":"2025-03-22T10:49:33.000Z","dependencies_parsed_at":"2025-01-27T02:27:24.510Z","dependency_job_id":"2352f659-f072-48d5-9a2a-151a0c8e7b0c","html_url":"https://github.com/jrie/sqstorage","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrie%2Fsqstorage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrie%2Fsqstorage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrie%2Fsqstorage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrie%2Fsqstorage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrie","download_url":"https://codeload.github.com/jrie/sqstorage/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248262155,"owners_count":21074255,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apache","database","inventory","management","nginx","php","storage","web-application"],"created_at":"2025-02-03T05:24:07.451Z","updated_at":"2025-04-10T17:40:28.143Z","avatar_url":"https://github.com/jrie.png","language":"PHP","funding_links":["https://paypal.me/dwroxnet"],"categories":[],"sub_categories":[],"readme":"# sqStorage\n![Logo sqStorage](https://dwrox.net/imgs/sqstorage.webp \"Logo sqStorage\")\n\n## A free and open source web based inventory and storage manager\n*A easy to use and super quick way to organize your inventory, storage and storage areas or any other kind of collections, like music, movie or video games.*\n\n## Official website\n\nThe official sqStorage website is located at [https://sqstorage.net](https://sqstorage.net)\n\n### Online interactive live demo\nA live demo is also available, including the current development state. The live demo can be found at [sqStorage live demo](https://sqstorage.net/#livedemo).\n\n## Support development\nYou can actively support the development by renting paid hosting and support.\nThis offer is for private and business users equally. Also, you can get a subdomain at ***`yourname`.sqstorage.net***, and password protected access in addition to the optional user system of sqStorage.\n\nIf you do not feel like renting hosting and support, you always can make a donation using PayPal.me at [https://paypal.me/dwroxnet](https://paypal.me/dwroxnet).\n\n### About available languages and language extensions\nRight now sqStorage is available in *German*, *English* and *Polish*.\nFeel free to add your own translation.\n\nSee [LANGUAGE.md](LANGUAGE.md) for details on how to do so.\n\n\n## Installation and usage (manually, for docker follow [docker-installation.md](docker-installation.md))\n\n### Requirements\n\n* PHP version 8.2 and upwards\n  * PHP extensions: `mysqli`, `gettext`, `intl`,\n  * PHP extension `gd`\n* a MySQL-compatible database server (e.g. MariaDB) or *SQLite3\n* a web server, e.g. nginx, Apache or *lighttpd.\n\n**Note for lighttpd**: In order to use `lighttpd` you currently have to disable pretty urls on installation, or in case of a exsiting installation, change the option is in your `dba.php`. Set `$prettyURLs = false;`\n\n**Note for SQLite**: SQLite is currently useable by a predefined, empty, database file located in `support/sqlite_db.sq3` - there is no setup script, the database is prepared and basically ready to use. You just have to adapt the `dba-example.php` and name it `dba.php` to target the `sqlite:/path/to/database/support/sqlite_db.sq3`. Also, the PHP SQLite and PDO-SQLite driver have to be installed in order for `meekrodb` to do its magic.\n\n### Installation\nTo install sqStorage perform the following steps:\n* Download the files using git: `git clone https://github.com/jrie/sqstorage` or `download as zip`\n* Place the files in the target directory (accessible for the web-server)\n* Set the required folder permission\n\t* The webserver required write permissions to the following directories\n\t* `smartyfiles/` ,`languages/locale/` and `support/`\n\t* On Linux `chown -R www-data smartyfiles/`, `chown -R www-data languages/locale/` and `chown -R www-data support/` should work in most cases. Alternatively you can `chmod +x setfolderpermssions.sh` and execute using `./setfolderpermssions.sh` if you are using bash.\n\n* Visit sqStorage with your browser and you will be redirected to the install page\n\t* Select whether you want to use pretty urls (rewrite module for the webserver is required to be activated, does currently **not** work for lighttpd)\n\t* Select whether you want to use the registration and login system\n\t* Enter the database credentials\n\t* Enter the database administrator username and password (those are not stored, it is only for database and user creation)\n\t* Save the credentials\n\t* Click install and the sqStorage database and user are created\n\t* In the last step, click to \"update the database\" for the current revision.\n\nYour sgStorage installation is completed.\n\n### Update your installation\n* Download the files and replace the existing  with the new ones\n* Visit the install.php page of your installation with your browser\n* Click the install / update button\n\n### Enable / disable the installation/update\nThe ***Installer*** `install.php` is only enabled if a file named `allow_install` exists within the `support/` directory.\nThis file is installed by default.\nIf sqStorage is accessible from outside your home network, you should delete this file either\n* manually after the installation is completed or\n* by using `settings.php` (login feature enabled)\nTo later update your installation, simple create the file manually\n\n\n## Manual configuration and other settings\nAll this settings can be configured in `support/dba.php`\n\n### Database\n\nDefault database: `tlv`\n\nDefault username: `tlvUser`\n\nDefault password: `tlvUser`\n\nDefault server: `localhost`\n\nDefault port: `3306`\n\nDefault useRegistration: `false`\n\nDefault usePrettyURLs: `true`\n\n***Please note the user registration and login/logout*** can be enabled by setting the variable `$useRegistration` to `true`, otherwise the default disables this feature by setting this to `false`.\n\nIf you are planning to use `$usePrettyURLs` on **Raspberry OS** please ensure that the apache2 site configuration allows the usage of `.htaccess`.\nThis can be achieved by adding\n```\n\u003cDirectory /var/www/html\u003e\n\tOptions Indexes FollowSymLinks\n\tAllowOverride All\n\tRequire all granted\n\u003c/Directory\u003e\n```\nto the `/etc/apache2/sites-enabled/000-default.conf` site configuration (don't forget to restart apache afterwards `systemctl restart apache2`)\n\nAlternatively `$usePrettyURLs` can be set to `false` in order to disable pretty urls. ***This might resolve some errors on Raspberry OS***.\n\n### PHP Error: Class \"DB\" not found on first installation / download\nSee this issue [\"Class \"DB\" not found\"](https://github.com/jrie/sqstorage/issues/106).\nThis is due to the fact that \"meekrodb\" is referenced as a submodule and not added as a fixed part in the downloaded package *or* on default `git clone` command. See also this [topic on Stackoverflow](https://stackoverflow.com/questions/34719785/how-to-add-submodule-files-to-a-github-release).\n\n#### Permissions and error 500\n\nThe directories `smartyfiles/` , `support/` and `languages/locale/` need to be **writeable** for the webserver.\n\n```\nchown -R www-data smartyfolders/\nchgrp -R www-data smartyfolders/\n\nchown -R www-data support/\nchgrp -R www-data support/\n\nchown -R www-data languages/locale/\nchgrp -R www-data languages/locale/\n```\n\nshould work in most cases.\n\n### First run\n\n- Once you installation is completed, visit the main page `index.php` to open sqStorage\n- If you decided to use the login feature, you will be asked to create an admin account.\n  * this can be done only once after installation!\n  * If you mess up, you will have to truncate the `users` table in order to prompt for admin account registration again.\n\n### Custom fields and image upload\n\nIf you are upgrading of an earlier version of sqStorage,\n* the custom fields code might have changed. This fields had been implemented earlier but where of no practical use.\n\n* the option to upload images was added\n\nStill possible so, you might have to **update your database** by visiting the `install.php` script and updating your database in order to make use of the latest features.\n\n## REST-API\nsqStorage provides a REST-API for data access and manipuluation.\nSee [REST_API.md](REST_API.md) for details on how to use it.\n\n## Troubleshooting\n`Fatal error: Uncaught Error: Class 'Locale' not found` If this error message is shown, the php package intl is not activated. If you're using Windows and XAMPP to run this app, you can enable it by editing the php.ini file in your XAMPP-php directory (Standard-installation: `C:\\xampp\\php\\php.ini`).\nRemove the semicolon in front of\n`;extension=php_intl.dll`\nand restart the Apache webserver.\n\n## Language selection in Windows XAMPP\nIf you're running a Windows XAMPP development system, you need to start xampp-control by command line. Start the command line [WIN+R -\u003e cmd.exe] and enter the command `set LANG=en_GB` (or de_DE, or ... you know) and start xampp-control `c:\\xampp\\xampp-control.exe`\n\n## German talking src ressource\nThe whole idea behind sqStorage or \"Thom's Inventarverwaltung\" can be found at the german bulletin board NGB.to over https://ngb.to/threads/39122-Webbasierte-Mini-Lagerverwaltung\n\n## Last but not least\nHave fun using sqStorage.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrie%2Fsqstorage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjrie%2Fsqstorage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrie%2Fsqstorage/lists"}