Project Icon

contoso-real-estate

优化企业级JavaScript参考架构与Azure集成指南

介绍Contoso Real Estate项目:一种基于JavaScript的企业级参考架构,集成了OpenAI智能、Azure Developer CLI模板以及Playwright测试。该架构展示了构建云原生应用及现代可组合前端的最佳实践和模式,支持Azure部署的JavaScript应用,以及从支付到实时通知的多种功能。

Contoso Real Estate 项目介绍

Contoso Real Estate 项目是一个企业级的智能参考架构,它运用了JavaScript语言,集成了OpenAI和多个Azure服务。这一项目提供了一种现代化且组合式的前端结构,共同构建并部署到Azure云平台中。对于那些想要构建现代JavaScript应用程序的开发者来说,这项目提供了最佳实践、架构模式及丰富的功能组件。

项目支持的应用场景

Contoso Real Estate 项目包括以下应用示例场景:

  • AI 聊天机器人集成(RAG 模式)
  • 与 Stripe 的支付集成
  • 实时通知功能
  • 门户应用程序:包含房产列表、收藏夹、用户身份验证和个人资料功能
  • 无头CMS和博客

系统架构

该项目提供了一个完整的企业级 JavaScript 参考架构,涉及前端、后端、开发运维和开发者工具组件的使用。

前端组件

  • Angular:用于查看和预订房源的门户应用。
  • Next.js:用于查看和创建博客文章的博客应用。
  • Playwright:用于门户应用的端到端测试。
  • Azure Static Web Apps:用于托管门户应用。

后端组件

  • Strapi:用于管理门户和博客应用数据的CMS。
  • Stripe:用于支付处理服务。
  • Fastify:用作Stripe API和门户应用接口的API。
  • Azure Functions:用于与门户应用通信的API。
  • Azure Cosmos DB的MongoDB:用于存储门户应用的数据。
  • Azure PostgreSQL数据库:用于存储CMS应用的数据。
  • Azure Storage:用于存储CMS和博客应用的数据。
  • Azure Container Apps:用于托管博客、Stripe和Strapi API。
  • Azure Application Insights:用于应用程序和API的日志访问及性能监测。

开发环境

该项目优化用于GitHub Codespaces,这是一个托管在GitHub云上的开发环境。以下是开始使用的步骤:

  1. 复制该项目仓库。
  2. 从你复制的版本创建一个新的GitHub Codespaces。这将自动生成一个包含所有必备依赖项的环境。
  3. 打开终端运行npm install && npm start,启动开发服务器。

AI 聊天机器人集成

Contoso Real Estate应用程序可以与一个使用 Azure OpenAI 构建的AI支持聊天机器人集成,以提供智能帮助和支持。

使用成本

GitHub Codespaces的使用是需要付费的,每日配额和使用限制会根据个人或者组织账户的类型而有所不同。

项目结构

项目使用npm工作区,其结构如下:

  • packages/:包含所有的软件包
    • api:包含无服务器的Azure Functions API。
    • portal:包含Angular网络门户。
    • blog:包含Next.js博客。
    • blog-cms:包含Strapi CMS。
    • docs:包含开发者指南网站内容。
    • stripe:包含Stripe webhook。
    • testing:包含Playwright测试。

部署到Azure

本项目使用Azure Developer CLI (azd)来配置基础设施、打包和部署应用程序到Azure。按照以下步骤开始部署:

  1. 登录到azd,首次使用每台设备需要进行一次。
  2. 运行azd provision进行基础设施配置。
  3. 运行azd deploy进行应用部署。

CI/CD 配置

可以通过运行以下命令来配置CI/CD流水线:

azd pipeline config --auth-type client-credentials

清理资源

完成之后,可以通过以下命令删除用此模板创建的所有Azure资源:

azd down

开发者指南

项目提供了一个独立的开发者指南(Developer Guide),可以在packages/docs路径下找到,并实现为一个互动网站。更多信息请查看这里

想要贡献?

如果你想要报告一个错误、贡献一些代码,或者改进文档,非常欢迎!请查阅我们的贡献指南并查看我们的代码问题列表

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号