There are primarily 3 areas in which you can contribute in SigNoz
- Frontend ( written in Typescript, React)
- Query Service (written in Go)
- Flattener Processor (written in Go)
Depending upon your area of expertise & interest, you can chose one or more to contribute. Below are detailed instructions to contribute in each area
Need to update https://github.com/SigNoz/signoz/tree/main/frontend
git clone https://github.com/SigNoz/signoz.git && cd signoz
- comment out frontend service section at
deploy/docker/clickhouse-setup/docker-compose.yaml#L38
- run
cd deploy && docker-compose -f docker/clickhouse-setup/docker-compose.yaml up -d
(this will install signoz locally without the frontend service) cd ../frontend
and change baseURL tohttp://localhost:8080
in filesrc/constants/env.ts
yarn install
yarn dev
If you don't want to install SigNoz backend just for doing frontend development, we can provide you with test environments which you can use as the backend. Please ping us in #contributing channel in our slack community and we will DM you with <test environment URL>
git clone https://github.com/SigNoz/signoz.git && cd signoz/frontend
- change baseURL to
<test environment URL>
in filesrc/constants/env.ts
yarn install
yarn dev
Frontend should now be accessible at http://localhost:3000/application
Need to update https://github.com/SigNoz/signoz/tree/main/pkg/query-service
git clone https://github.com/SigNoz/signoz.git && cd signoz/deploy
- comment out frontend service section at
docker/clickhouse-setup/docker-compose.yaml#L38
- comment out query-service section at
docker/clickhouse-setup/docker-compose.yaml#L22
- Run
docker-compose -f docker/clickhouse-setup/docker-compose.yaml up -d
(this will install signoz locally without the frontend and query-service) STORAGE=clickhouse ClickHouseUrl=tcp://localhost:9001 go run main.go
Query Service should now be available at http://localhost:8080
If you want to see how, frontend plays with query service, you can run frontend also in you local env with the baseURL changed to
http://localhost:8080
in filesrc/constants/env.ts
as the query-service is now running at port8080
Not needed to run for the ClickHouse setup
more info at https://github.com/SigNoz/signoz/tree/main/pkg/processors/flattener
You can always reach out to ankit@signoz.io
to understand more about the repo and product. We are very responsive over email and slack.
- If you find any bugs, please create an issue
- If you find anything missing in documentation, you can create an issue with label documentation
- If you want to build any new feature, please create an issue with label
enhancement
- If you want to discuss something about the product, start a new discussion
We try to follow https://www.conventionalcommits.org/en/v1.0.0/
More specifically the commits and PRs should have type specifiers prefixed in the name. This should give you a better idea.
e.g. If you are submitting a fix for an issue in frontend - PR name should be prefixed with fix(FE):
Feel free to ping us on #contributing or #contributing-frontend
on our slack community if you need any help on this :)