---
slug: "contributing"
sidebar_position: 1
---

# Contributing to Gitea

Thank you for your interest in contributing to Gitea! This guide will help you understand how to contribute to the project effectively.

## Getting Started

Before you start contributing, please read our [Hacking on Gitea](../development/hacking-on-gitea.md) guide to set up your development environment.

## Contribution Guidelines

We have specific guidelines for different types of contributions:

### Backend Development

If you're working on backend code (Go), please follow our [Guidelines for Backend Development](guidelines-backend.md). This includes:

- Package design and dependencies
- Database operations and migrations
- Testing strategies
- Code organization

### Frontend Development

For frontend contributions (JavaScript, CSS, Vue), refer to our [Guidelines for Frontend Development](guidelines-frontend.md). This covers:

- Framework usage (Vue3, Fomantic-UI)
- Code style and best practices
- Accessibility requirements
- TypeScript usage

### Refactoring

When refactoring existing code, follow our [Guidelines for Refactoring](guidelines-refactoring.md) to ensure:

- Clear refactoring objectives
- Proper review process
- Maintaining backward compatibility
- Incremental improvements

### Localization

To contribute translations or localization improvements, see our [Localization Guide](localization.md) which explains:

- How to contribute translations via Crowdin
- Supported languages
- Translation workflow

## Code of Conduct

Please be respectful and constructive in all interactions with the community. We are committed to providing a welcoming and inclusive environment for all contributors.

## Getting Help

If you need help with your contribution:

- Join our [Discord](https://discord.gg/gitea) #Develop channel
- Visit our [Forum](https://forum.gitea.com/)
- Check existing [GitHub Issues](https://github.com/go-gitea/gitea/issues)

## Submitting Your Contribution

1. Fork the repository
2. Create a feature branch
3. Make your changes following the relevant guidelines
4. Write tests for your changes
5. Ensure all tests pass
6. Submit a pull request

For more details, see our [CONTRIBUTING.md](https://github.com/go-gitea/gitea/blob/main/CONTRIBUTING.md) in the main repository.

Thank you for helping make Gitea better!
