{"id":18694334,"url":"https://github.com/csev/apps","last_synced_at":"2026-02-02T12:37:52.587Z","repository":{"id":142739746,"uuid":"222269460","full_name":"csev/apps","owner":"csev","description":"The top level page for umsi apps","archived":false,"fork":false,"pushed_at":"2024-10-28T14:28:03.000Z","size":22,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-19T13:16:10.146Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-11-17T15:29:43.000Z","updated_at":"2024-10-28T14:28:06.000Z","dependencies_parsed_at":"2023-12-14T04:28:38.045Z","dependency_job_id":"770cff55-ed1a-4200-abf1-b88d412f53cd","html_url":"https://github.com/csev/apps","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/csev/apps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csev%2Fapps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csev%2Fapps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csev%2Fapps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csev%2Fapps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csev","download_url":"https://codeload.github.com/csev/apps/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csev%2Fapps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29012680,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-02T10:37:29.253Z","status":"ssl_error","status_checked_at":"2026-02-02T10:37:28.644Z","response_time":58,"last_error":"SSL_read: 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":[],"created_at":"2024-11-07T11:09:57.263Z","updated_at":"2026-02-02T12:37:52.569Z","avatar_url":"https://github.com/csev.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"UMSI Learning Applications\n==========================\n\nCourse materials for apps.sites.uofmhosting.net\n\nSetup On Localhost\n------------------\n\nHere are the steps to set this up on localhost on a Macintosh using MAMP.\n\nInstall MAMP (or similar) using https://www.wa4e.com/install\n\nCheck out this repo into a top level folder in htdocs\n\n    cd /Applications/MAMP/htdocs\n    git clone https://github.com/csev/apps.git\n\nGo into the newly checked out folder and get a copy of Tsugi:\n\n    cd apps\n    git clone https://github.com/csev/tsugi.git\n\nCreate a database in your SQL server:\n\n    CREATE DATABASE tsugi DEFAULT CHARACTER SET utf8;\n    GRANT ALL ON tsugi.* TO 'ltiuser'@'localhost' IDENTIFIED BY 'ltipassword';\n    GRANT ALL ON tsugi.* TO 'ltiuser'@'127.0.0.1' IDENTIFIED BY 'ltipassword';\n\nStill in the tsugi folder set up config.php:\n\n    cp config-dist.php config.php\n\nEdit the config.php file, scroll through and set up all the variables.  As you scroll through the file\nsome of the following values are the values I use on my MAMP:\n\n    $wwwroot = 'http://localhost:8888/apps/tsugi';   // Embedded Tsugi localhost\n    \n    ...\n    \n    $CFG-\u003epdo = 'mysql:host=127.0.0.1;port=8889;dbname=tsugi'; // MAMP\n    $CFG-\u003edbuser    = 'ltiuser';\n    $CFG-\u003edbpass    = 'ltipassword';\n    \n    ...\n    \n    $CFG-\u003eadminpw = 'short';\n    \n    ...\n    \n    $CFG-\u003eapphome = 'http://localhost:8888/apps';\n    $CFG-\u003econtext_title = \"Web Applications for Everybody\";\n    $CFG-\u003elessons = $CFG-\u003edirroot.'/../lessons.json';\n    \n    ... \n    \n    $CFG-\u003etool_folders = array(\"admin\", \"../tools\", \"../mod\");\n    $CFG-\u003einstall_folder = $CFG-\u003edirroot.'./../mod'; // Tsugi as a store\n    \n    ...\n    \n    $CFG-\u003eservicename = 'UMSI Apps';\n\nThen go to https://console.developers.google.com/apis/credentials and\ncreate an \"OAuth Client ID\".  Make it a \"Web Application\", give it a name,\nput the following into \"Authorized JavaScript Origins\":\n\n        http://localhost\n\nAnd these into Authorized redirect URIs:\n\n    http://localhost/apps/tsugi/login.php\n    http://localhost/apps/tsugi/login\n\nNote: You do not need port numbers for either of these values in your Google\nconfiguration.\n\nGoogle will give you a 'client ID' and 'client secret', add them to `config.php`\nas follows:\n\n    $CFG-\u003egoogle_client_id = '96..snip..oogleusercontent.com';\n    $CFG-\u003egoogle_client_secret = 'R6..snip..29a';\n\nWhile you are there, you could \"Create credentials\", select \"API\nkey\", and name the key \"My Google MAP API Key\" and put the API\nkey into `config.php` like the following:\n\n    $CFG-\u003egoogle_map_api_key = 'AIza..snip..9e8';\n\nStarting the Application\n------------------------\n\nAfter the above configuration is done, navigate to your application:\n\n    http://localhost:8888/apps/\n\nIt should complain that you have not created tables and suggest you \nuse the Admin console to do that:\n\n    http://localhost:8888/apps/tsugi/admin\n\nIt will demand the `$CFG-\u003eadminpw` from `config.php` (above) before \nunlocking the admin console.  Run the \"Upgrade Database\" option and\nit should create lots of tables in the database and the red warning\nmessage about bad database, should go away.\n\nGot into the database and the `lti_key` table, find the row with the `key_key`\nof google.com and put a value in the `secret` column - anything will do - \njust don't leave it empty or the internal LTI tools will not launch.\n\nNext use the administrator interface to install the peer-grading tool\nfrom the github repository:\n\n    http://localhost:8888/apps/tsugi/admin/install\n\nClick on \"Available Modules\" and install https://github.com/tsugitools/peer-grade\n\nUsing the Application\n---------------------\n\nNavigate to:\n\n    http://localhost:8888/apps/\n\nYou should click around without logging in and see if things work.\n\nThen log in with your Google account and the UI should change.  In particular you should\nsee 'Assignments' and in Lessons you should start seeing LTI autograders.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsev%2Fapps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcsev%2Fapps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsev%2Fapps/lists"}