{"id":15920539,"url":"https://github.com/cutls/deretest","last_synced_at":"2026-06-11T21:33:53.946Z","repository":{"id":92291998,"uuid":"416763637","full_name":"cutls/deretest","owner":"cutls","description":"デレマスクイズをするためだけに作成された謎のWebアプリケーション","archived":false,"fork":false,"pushed_at":"2021-11-09T14:10:23.000Z","size":249,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T23:42:20.016Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://cutls-deretest.netlify.app/","language":"TypeScript","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/cutls.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-13T13:51:51.000Z","updated_at":"2021-11-09T14:57:15.000Z","dependencies_parsed_at":"2023-06-19T10:49:08.711Z","dependency_job_id":null,"html_url":"https://github.com/cutls/deretest","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cutls/deretest","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cutls%2Fderetest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cutls%2Fderetest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cutls%2Fderetest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cutls%2Fderetest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cutls","download_url":"https://codeload.github.com/cutls/deretest/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cutls%2Fderetest/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34219510,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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-10-06T19:40:34.808Z","updated_at":"2026-06-11T21:33:53.929Z","avatar_url":"https://github.com/cutls.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# deretest\n\nデレマスクイズを作りたかったので、そういうツール\n\nAWSの各サービスの利用が前提で、作成者は静的ファイルを置くためにNetlifyを利用しています。\n\n[![Netlify Status](https://api.netlify.com/api/v1/badges/550ed300-892b-4d2f-881a-b21ee4c986ee/deploy-status)](https://app.netlify.com/sites/cutls-deretest/deploys)\n\n## router\n\n* `/`: トップページ  \nテキストボックスにIDを入れてクイズのホーム画面へ\n* `/q/:id`: クイズのホーム画面\n* `/make`: クイズの作成画面  \n後述の「どうでもいいパスフレーズ」で保護されています\n\n## config\n\nproccess.env(または.env)にENV=(config JSON)を入力\n\n.env.sample参照\n\nconfig JSON\n```\n{\n    \"uploader\": \"uploader APIのendpoint\",\n    \"get\": \"get APIのendpoint\",\n    \"post\": \"post APIのendpoint\",\n    \"auth\": \"簡易パスワード\",\n    \"cdn\": \"CDNのエンドポイント\"\n}\n```\n\nこれを1行にminifyして環境変数または.envに記入します。\n\n## API\n\n各APIは全てLambdaで組むことを想定しています。(lambda-sample参照)\n\nこれらを全て別々の関数として登録し、API Gatewayで認証のないHTTP APIを作製して、URLをconfigに書きます。\n(例: https://xxxxxxxxxx.execute-api.ap-northeast-n.amazonaws.com/default/deretest-lambda-sample-upload)\n\n(最低でもuploaderの)実行ロールがS3にアクセスできるようにしてください。\n\n### 「どうでもいいパスフレーズ」について\n\nアップロードイベントが発火するときにフロントがpromptを出して入力させるので、\nパスフレーズを入力しないとアップロード(問題作成)ができないようになっています。\n\n## DB\n\nDynamoDBでidをパーティションキー(文字列)にしたテーブルを作って、Lambdaの「DYNAMODB-TABLE-NAME」をテーブル名で埋めます。\n\n## S3\n\nバケットを作り、バケット名をLambdaの「YOUR BUCKET NAME」に入れます。\n\n### 権限とCDN\n\nCloudFront CDNを使用する場合、最低でもCloudFrontで読み込める権限にする必要があります。\n\nそうでない場合は全公開にする必要があります。\n\n`https://cdn.example.com/garage/`以下に置かれる画像にアクセスできるようにconfigのcdnのエンドポイントを`https://cdn.example.com/garage/`と記入します。\n\n## ビルドと開発\n\n開発: `yarn serve`\n\nビルド: `yarn build`\n\ndist以下にビルドされます。dist以下を静的ファイルとして配置するとアクセスできます。\n\n以下のボタンを押すとforkまでやってNetlifyに展開できますが、環境変数を自分で設定して再ビルドする必要があります。\n\n[![Netlify Status](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/cutls/deretest)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcutls%2Fderetest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcutls%2Fderetest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcutls%2Fderetest/lists"}