AlertFlow is a monitoring automation platform designed to streamline workflows, manage team members, and monitor project progress. This repository contains both the frontend and backend code for the AlertFlow application.
- Project Management: Create, edit, and delete projects.
- Flows: Create flows to design workflows per alarm pattern.
- Payloads: Receive incoming alarms from your monitoring infrastructure via payloads & flows.
- Runners: Manage self-hosted runners for executing tasks.
- Team Collaboration: Invite team members, assign roles, and manage permissions.
- Audit Logs: Track changes and activities within projects.
To get started with the AlertFlow project, follow these steps:
-
Clone the repository:
git clone [email protected]:AlertFlow/alertflow.git cd alertflow
-
Install dependencies:
cd services/backend && go mod download
-
Create a config.yaml file in the
config
directory and add the necessary configuration:LogLevel: info Database: Server: localhost Port: 5432 Name: postgres User: postgres Password: postgres JWT: Secret: your-jwt-secret
-
Build and run the backend server:
go build -o alertflow-backend ./alertflow-backend --config config/config.yaml
-
Navigate to the frontend directory:
cd services/frontend
-
Install dependencies:
npm install
-
Create a
.env.local
file and add the necessary environment variables:NEXT_PUBLIC_API_URL="https://your-api-url.com"
-
Start the development server:
npm run dev
Once the development server is running, you can access the application at http://localhost:3000
. From there, you can create and manage projects, invite team members, and monitor project activities.
The project structure is organized as follows:
- backend: Contains the backend code for handling API requests, database interactions, and business logic.
- frontend: Contains the frontend code for the user interface, including components, pages, and styles.
We welcome contributions to the AlertFlow project! To contribute, follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit them:
git commit -m "Add your commit message"
- Push to the branch:
git push origin feature/your-feature-name
- Open a pull request on GitHub.
This project is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE Version 3. See the LICENSE file for details.