Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗CareTogether is an open-source case management system (CMS) for nonprofits connecting families to caring communities. The wiki provides much more detail about the design of CareTogether. If you prefer to jump straight into the code, keep reading!
Thank you for your interest in helping to build this vital tool! If you'd like to jump straight into development, please check out the issues labeled "Help Wanted", which are tasks that have been identified as a good fit for initial contributions and have documentation to support you. They are intentionally not critically time-sensitive, so you can work on them at your own pace. We are tracking the overall status of those issues in the CareTogether Contributions project.
If you have additional time to dedicate to contributing and feel you're ready to take on larger chunks of feature development work, please contact Lars Kemmann to set up an introductory call and request an invite to Teams where we are coordinating the design, development, and support efforts for CareTogether.
We ask that you practice effective communication, preferably through comments on the GitHub issues:
You can build and run CareTogether on any operating system supported by Node.js and .NET, including Windows, MacOS, and Linux. Install the following:
You will also need to allow PowerShell scripts to run on your computer (see documentation). To do this, open an administrative PowerShell session and run the following command:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
NOTE: The API project comes with a basic set of test data for local development. This test data is automatically regenerated each time you start the API project.
For frontend route changes, see location routing.
dotnet run (in the src/CareTogether.Api directory) to start the API, and npm run dev (in the src/caretogether-pwa directory) to start the client. If using another IDE such as Visual Studio, use the equivalent debug or launch options.[email protected]P@ssw0rd[email protected]P@ssw0rdThe local end-to-end test path uses the Aspire AppHost in src/CareTogether.AppHost to start Keycloak, the API, and the React/Vite frontend. Keycloak imports the local test realm from src/CareTogether.AppHost/Realms/caretogether-local-realm.json, and the AppHost configures the API and frontend to use that local Keycloak realm instead of Azure AD B2C. The AppHost also disables external telemetry and enables local-only feature flag overrides needed by the referral E2E path.
Before running the AppHost Playwright test, make sure these local prerequisites are available:
docker info must succeed.127.0.0.1:10000. The API uses UseDevelopmentStorage=true for local test data. One direct command is azurite-blob --loose from the repository root.3000 is free. The local Keycloak realm, API CORS policy, and Vite frontend are intentionally aligned on http://localhost:3000.npm ci from src/caretogether-pwa.npx playwright install from src/caretogether-pwa.Recommended local verification commands:
docker info
Push-Location src/caretogether-pwa
npm ci
npx playwright install
npm run type-check
npx playwright test --list
Pop-Location
dotnet test test/CareTogether.AppHost.Tests/CareTogether.AppHost.Tests.csproj
The frontend uses a lightweight callback document for silent token renewal and popup-based session recovery. Every deployed frontend origin must register /silent-callback.html as a Single-page application redirect URI in the Azure AD B2C app registration. The checked-in environments require:
http://localhost:3000/silent-callback.htmlhttps://app.caretogether.io/silent-callback.htmlRegister the applicable URI before deploying a build that uses it. The callback intentionally contains no application code so MSAL's hidden iframe does not start a second copy of the application.
If the AppHost Playwright test fails before the browser opens, first check Docker and Azurite. The test performs preflight checks for both and should fail with a direct message when either local dependency is unavailable.
npm install -g azurite from the command lineazurite-blob --loose command to start Azurite from the command line (This will run Azurite with the default Blob service endpoint as we don't use the Queue or Table storage endpoints currently. You can also add a --silent parameter if you don't want to see individual requests logged to the terminal. The --loose parameter is currently required to support valet key access from the browser.)CareTogether is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0) which, crucially, only permits hosting this software (including derivatives) if you also make the source code of the software and any of your modifications available to your users under this same license. This effectively ensures that CareTogether CMS remains forever open-source and doesn't simply become the base code for a proprietary derivative at some point. We value collaboration and openness, and we believe that the best way to accomplish this is to ensure the software remains open to everyone.
The CareTogether name and logo are exempt from the AGPL-3.0 license as they remain the property of Coept LLC. Among other things, this means that you are not allowed to brand or advertise your hosted version of this software as being the CareTogether CMS without express written permission from Coept LLC. This is intended both to protect the business interest of Coept LLC in providing the CareTogether hosted service and to protect against impersonation of the CareTogether hosted service by third parties.