参加直播:周四,美国东部时间上午 11 点,Storybook 9 发布会及 AMA 问答

适用于 IMA.js 应用的 Storybook 集成插件。

在 Github 上查看

IMA.js logo

IMA.js

Build Status dependencies Status Known Vulnerabilities code style: prettier

IMA.js 是一个应用开发栈,用于开发使用纯 JavaScript 和 React 编写的同构应用。

为什么我们使用 IMA.js,以及你为什么也应该使用?

Seznam.cz,前端应用的开发伴随着许多需要在项目发布前完成的任务。这主要是因为用户群多样化以及产品需求具有挑战性。

为了**不**在每个项目上重复造轮子,并解决所有这些问题(即需要完成的任务),我们创建了 IMA.js 框架。以下是我们最引以为傲的一些方面:

  • **同构** - 应用逻辑首先在服务器端执行,生成页面标记,当应用逻辑在客户端执行时,它会自动绑定到服务器生成的标记,并像单页应用一样运行(或者如果客户端不支持 JavaScript,则像多页应用一样)。这使得加载时间更快,开箱即用地支持网络爬虫,并带来更好的整体用户体验(简称 UX)。
  • **兼容 React** - IMA.js 视图扩展了 React 组件,并与我们的控制器紧密配合。这意味着你可以充分利用 React v16 的强大功能,而不会失去任何东西。
  • **生产环境就绪** - 无需额外的设置或配置。IMA.js 从一开始就使用特定于环境的配置。
  • **经受实战考验** - IMA.js 被 Seznam.cz 的各种项目所使用。其中一些项目正在挑战前端应用能力的极限。

文档

我们为你准备了一个全面的教程:你的第一个 IMA.js 应用。本教程涵盖了使用 IMA.js 创建同构 Web 应用的基础知识,但你也会遇到一些更高级的概念。

有关 IMA.js 的更深入信息,请参阅完整的文档以及 imajs.io 上的更多内容。

IMA.js 主要组成部分

  • **核心** - 它包含用于日常工作的基础类和通用类,支持服务器端渲染和在浏览器中水合(hydrate)应用。
  • **服务器** - 它包含允许你将 IMA 应用与 express 框架连接的方法。
  • **gulp 任务** - IMA.js 使用 gulp 进行打包和自动化。这里有预设的通用任务和基础配置。

插件

请参阅 ima-plugins 仓库以获取可用的 IMA.js 插件。

快速入门

通过一个命令初始化应用骨架

npx create-ima-app
# or if you are using yarn
yarn create ima-app

并开始开发!

cd create-ima-app
npm run dev
# or if you are using yarn
yarn dev

贡献

请参阅如何贡献

作者
  • corvidism
    corvidism
  • mjancarik
    mjancarik
  • filipoliko
    filipoliko
  • matej.marcisovsky
    matej.marcisovsky
  • jsimck
    jsimck
  • hartja
    hartja
标签