{"id":17273185,"url":"https://github.com/nexmoe/roam-space","last_synced_at":"2025-04-14T08:42:30.747Z","repository":{"id":189158819,"uuid":"680160033","full_name":"nexmoe/roam-space","owner":"nexmoe","description":"Roam Space is a place collect all you care about on the Internet. Information is like a flow.","archived":false,"fork":false,"pushed_at":"2024-04-12T10:47:46.000Z","size":1245,"stargazers_count":5,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-20T09:05:52.193Z","etag":null,"topics":["blog","postcard","reader","rss","rsshub"],"latest_commit_sha":null,"homepage":"https://i.nexmoe.com","language":"TypeScript","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/nexmoe.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}},"created_at":"2023-08-18T13:39:18.000Z","updated_at":"2024-04-23T04:24:52.266Z","dependencies_parsed_at":"2023-10-11T07:44:32.185Z","dependency_job_id":"6a657c7f-bc1d-4d01-b1dd-1fafe73b9e45","html_url":"https://github.com/nexmoe/roam-space","commit_stats":null,"previous_names":["nexmoe/roam-index","nexmoe/roam-space"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexmoe%2Froam-space","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexmoe%2Froam-space/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexmoe%2Froam-space/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nexmoe%2Froam-space/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nexmoe","download_url":"https://codeload.github.com/nexmoe/roam-space/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248849568,"owners_count":21171601,"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":["blog","postcard","reader","rss","rsshub"],"created_at":"2024-10-15T08:50:30.788Z","updated_at":"2025-04-14T08:42:30.727Z","avatar_url":"https://github.com/nexmoe.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Roam Space （正在积极开发中）\n\n集合在互联网关于你的一切\n\n## Feature\n\n- Rsshub\n- Social Button\n- SEO 良好\n- 集成 S3 来做静态资源持久化\n\n## 极低的维护负担\n\n配置如下内容，然后 Roam Space 将为你生成成百上千个关于你的页面\n\n\u003chttps://github.com/nexmoe/roam-space/blob/c2ae01487c388d2a48868b1876c6518a279d11e1/config/flow.json\u003e\n\n## 不是什么\n\n- 不是 Hexo、WordPress 之类的 CMS\n- 不是博客\n- 不是 Linktree、Bento 之类的模块化组装链接页\n\n## Preview\n\n![image](https://github.com/nexmoe/roam-space/assets/16796652/599b6dfc-92c4-4c3f-bf68-2ef94c8a1ffd)\n\n## 设计概念\n\n### Space\n\n### Flow\n\n### Module\n\n## 技术栈\n\n1. **Nuxt 3**: 基于 Vue.js 的高性能框架，用于构建服务端渲染（SSR）和静态生成（SSG）的应用。`nuxt`、`@nuxt/image`、`@nuxt/test-utils`、`@nuxt/html-validator`、`@nuxtjs/google-fonts`、`@nuxtjs/i18n`、`@nuxtjs/seo`、`@nuxtjs/tailwindcss`、`@nuxtjs/web-vitals`、`nuxt-gtag`、`nuxt-icon`、`nuxt-scheduler` 和 `nuxt-svgo` 等。\n\n2. **Prisma**: 一个类型安全的 ORM（对象关系映射器），用于 Node.js 和 TypeScript，用于数据库交互。项目中使用了`@prisma/client` 和 `prisma` 进行数据库操作，以及`prisma generate`命令来生成数据库访问客户端代码。\n\n3. **TRPC (Tanner's Request/Response Protocol)**: 一种用于构建 API 的类型安全的请求响应协议。项目使用了`@trpc/client` 和 `@trpc/server` 来处理 API 请求。\n\n4. **Pinia**: Vue 的状态管理库，用以替代 Vuex，提供更简单的状态管理方案。项目中使用了`pinia` 和 `@pinia/nuxt`。\n\n5. **TypeScript**: 强类型的 JavaScript 超集，用于提升代码质量。项目中通过`typescript`和相关配置进行类型检查。\n\n6. **Tailwind CSS**: 一个实用优先的 CSS 框架，用于快速构建界面。项目使用了`tailwindcss-animate`和自定义配置。\n\n7. **VueUse**: 一套 Vue 实用函数库，提供了很多有用的 Vue Composition API 工具。项目中使用了`@vueuse/nuxt`。\n\n8. **ESLint**: 代码质量检查工具，确保代码风格一致性和最佳实践。项目中配置了 ESLint 及其相关插件如`@nuxtjs/eslint`。\n\n9. **Husky**: 用于在 Git 提交前运行脚本的工具，常用于代码质量检查。项目中使用了`husky`来执行这些钩子。\n\n10. **AWS SDK v3**: 用于与 Amazon Web Services 交互的库，特别是项目中使用了`@aws-sdk/client-s3`来操作 S3 存储服务。\n\n11. **其他辅助库和技术**：包括`sharp`用于图片处理，`clsx`用于类名管理，`zod`进行输入验证，`dayjs`处理日期和时间，`uuid`生成唯一 ID 等。\n\n采用现代前端技术栈开发的 Web 应用，侧重于性能优化、可维护性和开发效率，结合了服务端渲染、静态站点生成、数据库操作、状态管理、测试自动化等多种功能。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnexmoe%2Froam-space","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnexmoe%2Froam-space","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnexmoe%2Froam-space/lists"}