itchgrep
1.0.0
?使用文本查询搜索itch.io资产;在不依靠标签的情况下找到所需的东西。
访问itchgrep.com开始探索。
我们有吗? Discord服务器!这是一个分享,学习和谈论游戏开发以及我们热衷的项目的地方。随时加入我们!
您的支持会增强我们的热情,并帮助服务器运行!如果您欣赏我们所做的事情并想为我们的旅程做出贡献,请考虑:
选择这些工具和技术是为了为Itchgrep的开发人员和用户提供无缝和高效的体验。

如果您想贡献或仅在本地运行该项目以供自己使用,请按照以下说明进行操作。
该项目是在Linux上构建和维护的。虽然我认为通常不可能在Windows上运行,但是TaskFile是使用Linux命令编写的。
该项目分为两种服务:
dataservice ,负责从itch.io获取资产列表webserver ,向存储的数据提供搜索工具。使用随附的任务文件运行这些服务。
task local-dataservice将使用GC的本地实例启动dataservice。将GET请求发送到其触发端点:curl -X GET "localhost:8080/trigger-fetch"。这将导致该服务从iTch.io刮擦数据,索引并将数据和索引存储在本地GCS上。
task local-dataservice-temp-fix 。这可以在没有Docker的情况下运行dataservice 。task local-webserver将在Docker容器中构建并运行Web服务器,并在单独的容器中与本地GC一起构建并运行Web服务器。 Templ模板在构建过程中未复制,而是在容器内部生成。task templ将从任何.templ文件中生成.go文件。这对于建立/运行不是必需的,而是提供代码完成并阻止语言服务器抱怨。 该项目的创建是为了在Google Cloud Run上托管dataservice和webserver 。资产数据旨在存储在Google Cloud Store中。
可以用任何无服务器平台替换Google Cloud Run,并且可以用任何对象存储替换Google Cloud Store,但是如果这是您的目标,则需要进行某些工作,并且以下说明将假定Google Cloud Services。
要在Google Cloud上部署该项目,请按照以下步骤操作。
gcloud几个准备步骤:
itchgrep-data对象存储。 (您也可以在此处使用另一个名称,但是然后您必须在文件internal/storage/storage.go中更改const 。Cloud Run Invoker的角色。稍后,我们将将此服务帐户附加到调度程序作业,以定期触发数据服务的运行。task gcloud-setup来配置gcloud ,以与此项目一起使用。否则,请确保手动正确配置。Taskfile PROJECT_ID , REGION和LOCATION的所有实例,以适合您的Google云项目配置。task deploy-dataservice以构建和部署数据服务。最后,您将收到新部署的数据服务的服务URL。DATASERVICE_URL=https://dataservice-ly6n5ozylq-od.a.run.app
SERVICE_ACCOUNT_EMAIL=cloud-run-invoker@itchgrep.iam.gserviceaccount.com
go-task create-dataservice-scheduler-job运行task deploy-webserver 。无需进一步的工作。
可以使用随附的任务文件进行测试。
task test :运行以下所有测试任务。task test-storage :测试storage软件包,要求Docker运行。 go fmt格式化您的代码。