Files
zitadel/CONTRIBUTING.md
2023-05-19 16:19:35 +02:00

3.2 KiB

Contributing

:attention: In this CONTRIBUTING.md you read about contributing to this very repository. If you want to develop your own login UI, please refer to the README.md.

Introduction

Thank you for your interest about how to contribute!

:attention: If you notice a possible security vulnerability, please don't hesitate to disclose any concern by contacting security@zitadel.com. You don't have to be perfectly sure about the nature of the vulnerability. We will give them a high priority and figure them out.

We also appreciate all your other ideas, thoughts and feedback and will take care of them as soon as possible. We love to discuss in an open space using GitHub issues, GitHub discussions in the core repo or in our chat on Discord. For private discussions, you have more contact options on our Website.

Pull Requests

Please consider the following guidelines when creating a pull request.

  • The latest changes are always in main, so please make your pull request against that branch.
  • pull requests should be raised for any change
  • üull requests need approval of a ZITADEL core engineer @zitadel/engineers before merging
  • We use ESLint/Prettier for linting/formatting, so please run pnpm lint:fix before committing to make resolving conflicts easier (VSCode users, check out this ESLint extension and this Prettier extension to fix lint and formatting issues in development)
  • If you add new functionality, please provide the corresponding documentation as well and make it part of the pull request

Setting Up The ZITADEL API

If you want to have a one-liner to get you up and running, or if you want to develop against a ZITADEL API with the latest features, or even add changes to ZITADEL itself at the same time, you should develop against your local ZITADEL process. However, it might be easier to develop against your ZITADEL Cloud instance if you don't have docker installed or have limited resources on your local machine.

Developing Against Your Local ZITADEL Instance

Developing Against Your ZITADEL Cloud Instance

Setting up local environment

This guide assumes you develop against a local ZITADEL instance using docker compose. If you want to develop against

A quick guide on how to setup your ZITADEL typescript app locally to work on it and test out any changes:

  1. Clone the repo:
git clone https://github.com/zitadel/typescript.git
cd typescript
  1. Install packages. Developing requires Node.js v16:
pnpm install
  1. Populate .env.local:

Copy /apps/login/.env to /apps/login/.env.local, and add your instance env variables for each entry.

cp apps/login/.env apps/login/.env.local
  1. Generate GRPC stub for the application:
pnpm generate
  1. Start the developer application/server:
pnpm dev

The application is now available at http://localhost:3000

That's it! 🎉