使用 React 和 Node.js 为您的团队构建快速、协作的知识库。
使用我们位于 www.getoutline.com 的托管版本试用 Outline。
这是运行Outline和所有相关服务的源代码。如果您想使用 Outline,则无需运行此代码,我们在 getoutline.com 上提供了该应用程序的托管版本。您还可以在我们的指南中找到有关使用 Outline 的文档。
如果您想运行自己的 Outline 副本或为开发做出贡献,那么这里就是您的最佳选择。
请参阅有关在生产配置中运行您自己的 Outline 副本的文档。
如果您对文档有疑问或需要改进,请在 GitHub 讨论中创建主题。
如果您希望对 Outline 做出更改、修复和改进,可以使用一个简短的指南来设置开发环境。
Outline 由一个小团队构建和维护 - 我们希望您能帮助我们修复错误并添加功能!
在提交拉取请求之前,请通过在 GitHub 上创建问题或发表评论来与核心团队进行讨论 - 我们也很乐意在讨论中听到您的意见。这样我们就可以确保在编写代码之前就方法达成一致。这将导致您的代码被接受的可能性更高。
如果您正在寻找入门方法,这里列出了帮助我们改进 Outline 的方法:
good first issue
标签的问题如果您有兴趣贡献或了解有关 Outline 代码库的更多信息,请首先参阅架构文档,以获取有关如何组合应用程序的高级概述。
在开发中,Outline 将简单的日志输出到控制台,并以类别为前缀。在生产中,它输出 JSON 日志,这些日志可以通过您首选的日志摄取管道轻松解析。
默认情况下禁用 HTTP 日志记录,但可以通过设置DEBUG=http
环境变量来启用。
我们的目标是为应用程序的关键部分提供足够的测试覆盖率,而不是 100% 的单元测试覆盖率。所有 API 端点和任何与身份验证相关的内容都应该经过彻底测试。
要添加新测试,请使用 Jest 编写测试,并在测试代码旁边添加一个扩展名为.test.js
的文件。
# To run all tests
make test
# To run backend tests in watch mode
make watch
使用make test
创建测试数据库后,您可以直接单独运行前端和后端测试。
# To run backend tests
yarn test:server
# To run a specific backend test
yarn test:server myTestFile
# To run frontend tests
yarn test:app
Sequelize 用于创建和运行迁移,例如:
yarn sequelize migration:generate --name my-migration
yarn sequelize db:migrate
或者在测试数据库上运行迁移:
yarn sequelize db:migrate --env test
Outline 已获得 BSL 1.1 许可。