{"id":19097944,"url":"https://github.com/aggrosoft/designer-backend-skeleton","last_synced_at":"2026-04-24T12:33:40.072Z","repository":{"id":57049624,"uuid":"233568916","full_name":"aggrosoft/designer-backend-skeleton","owner":"aggrosoft","description":"Project skeleton for shirtnetwork designer backend solution","archived":false,"fork":false,"pushed_at":"2021-04-14T08:12:06.000Z","size":26,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-04T23:10:05.143Z","etag":null,"topics":["composer","php","shirtnetwork"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aggrosoft.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":null}},"created_at":"2020-01-13T10:24:26.000Z","updated_at":"2021-04-14T08:12:09.000Z","dependencies_parsed_at":"2022-08-24T03:40:43.003Z","dependency_job_id":null,"html_url":"https://github.com/aggrosoft/designer-backend-skeleton","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/aggrosoft/designer-backend-skeleton","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aggrosoft%2Fdesigner-backend-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aggrosoft%2Fdesigner-backend-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aggrosoft%2Fdesigner-backend-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aggrosoft%2Fdesigner-backend-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aggrosoft","download_url":"https://codeload.github.com/aggrosoft/designer-backend-skeleton/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aggrosoft%2Fdesigner-backend-skeleton/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32224130,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T10:26:35.452Z","status":"ssl_error","status_checked_at":"2026-04-24T10:25:27.643Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["composer","php","shirtnetwork"],"created_at":"2024-11-09T03:43:31.609Z","updated_at":"2026-04-24T12:33:40.055Z","avatar_url":"https://github.com/aggrosoft.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shirtnetwork Designer Backend\n\nThis backend will handle configuration files, font management and uploading files for\nthe [shirtnetwork](https://www.shirtnetwork.com) designer. This backend is used for all implementations. Feel free to adapt\nthis skeleton to your own needs.\n\n:exclamation: **We recommend using the [nodejs based version](https://www.github.com/aggrosoft/designer-backend-skeleton-node) whenever possible**\n\n## Installation\n\nUse git to clone the repository\n\n```bash\ngit clone https://github.com/aggrosoft/designer-backend-skeleton.git\n```\n\nThen install the dependencies using composer inside the created folder\n\n```bash\ncomposer install\n```\n\n## Configuration\n\nThe repository comes with a config.inc.sample.php file, copy this file to config.inc.php and \nadjust it to your needs. If you do not copy the file before first request it will be created\nautomatically. Files are stored in the var/ subfolders by default.\n\nPoint your webserver to serve the root of the application, it is pre configured to work with\napache webserver. We recommend using a subdomain or a separate domain for the app e.g.: https://config.example.org\n\n## Usage\n\nDepending on your consuming system you will need to configure upload and config urls. Use as following:\n\n**Upload Endpoint** \n\nhttps://config.example.org/files\n\n**Config Endpoint**\n\nhttps://config.example.org\n\nFire up the settings interface to define fonts:\n\nhttps://config.example.org/settings/fonts\n\n## Security\n\n:exclamation: Be sure to add at least one user in the auth section of the config file, \notherwise authentication is skipped and everybody will be able to modify your settings.\n \nAlso be sure to set allowed-origins in config.inc.php so only specific endpoints can upload files and configurations.\n\n## NGINX\n\nYou can use NGINX as a webserver, as the designer backend is a slim application you will have to configure NGINX as following\n\n```nginxconfig\nserver {\n    listen 80;\n    server_name example.com;\n    index index.php;\n    error_log /path/to/example.error.log;\n    access_log /path/to/example.access.log;\n    root /path/to/public;\n\n    location / {\n        try_files $uri /index.php$is_args$args;\n    }\n\n    location ~ \\.php {\n        try_files $uri =404;\n        fastcgi_split_path_info ^(.+\\.php)(/.+)$;\n        include fastcgi_params;\n        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n        fastcgi_param SCRIPT_NAME $fastcgi_script_name;\n        fastcgi_index index.php;\n        fastcgi_pass 127.0.0.1:9000;\n    }\n}\n``` \n\n:exclamation: \nSince nginx will not route `/config` routes using this method you can rename `config.inc.php` to `cfg.inc.php` \nas a workaround. See the [Slim v4 Documentation](http://www.slimframework.com/docs/v4/start/web-servers.html)\nfor further information.\nContributions to improving the nginx config are very welcome.\n\n## Cron\n\nTo cleanup old uploaded files including their metadata the server ships with a symfony console command. Execute as following\n\n```bash\nbin/console uploads:cleanup\n```\n\nThis will delete all files older than 30 days, if the file was manifested it is valid 3 years instead.\n\n## Updating\n\nSimilar to installing, if you did not change the skeleton do the following:\n\n```bash\ngit pull\ncomposer update\n```\n\nOmit git pull if you did any changes to the skeleton.\n\n## Contributing\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n\nPlease make sure to update tests as appropriate.\n\n## License\n[MIT](https://choosealicense.com/licenses/mit/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faggrosoft%2Fdesigner-backend-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faggrosoft%2Fdesigner-backend-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faggrosoft%2Fdesigner-backend-skeleton/lists"}