gitlab-org--gitlab-foss/doc/development
..
cicd
code_intelligence
contributing
database
deprecation_guidelines
documentation
event_tracking
experiment_guide
fe_guide
feature_categorization
feature_flags
geo
go_guide
graphql_guide
i18n
img
integrations
new_fe_guide
product_analytics
python_guide
refactoring_guide
shell_scripting_guide
telemetry
testing_guide
ux_guide
adding_database_indexes.md
adding_service_component.md
api_graphql_styleguide.md
api_styleguide.md
application_limits.md
application_secrets.md
approval_rules.md
architecture.md
auto_devops.md
background_migrations.md
build_test_package.md
changelog.md
chaos_endpoints.md
chatops_on_gitlabcom.md
code_comments.md
code_review.md
creating_enums.md
cycle_analytics.md
dangerbot.md
database_debugging.md
database_query_comments.md
database_review.md
db_dump.md
deleting_migrations.md
diffs.md
distributed_tracing.md
doc_styleguide.md
ee_features.md
elasticsearch.md
emails.md
feature_flags.md
features_inside_dot_gitlab.md
file_storage.md
filtering_by_label.md
foreign_keys.md
frontend.md
gemfile.md
geo.md
git_object_deduplication.md
gitaly.md
github_importer.md
gitlab_diagram_overview.odg
gotchas.md
hash_indexes.md
i18n_guide.md
import_export.md
import_project.md
insert_into_tables_in_batches.md
instrumentation.md
interacting_components.md
internal_api.md
internal_users.md
issuable-like-models.md
issue_types.md
iterating_tables_in_batches.md
kubernetes.md
lfs.md
licensed_feature_availability.md
licensing.md
logging.md
mass_insert.md
merge_request_performance_guidelines.md
migration_style_guide.md
module_with_instance_variables.md
multi_version_compatibility.md
namespaces_storage_statistics.md
newlines_styleguide.md
omnibus.md
ordering_table_columns.md
packages.md
performance.md
permissions.md
pipelines.md
policies.md
polling.md
polymorphic_associations.md
post_deployment_migrations.md
profiling.md
projections.md
prometheus.md
prometheus_metrics.md
pry_debugging.md
query_count_limits.md
query_recorder.md
rails_initializers.md
rake_tasks.md
reactive_caching.md
README.md
redis.md
reference_processing.md
renaming_features.md
repository_mirroring.md
reusing_abstractions.md
rolling_out_changes_using_feature_flags.md
routing.md
scalability.md
secure_coding_guidelines.md
serializing_data.md
service_measurement.md
session.md
sha1_as_binary.md
shared_files.md
shell_commands.md
sidekiq_debugging.md
sidekiq_style_guide.md
single_table_inheritance.md
sql.md
swapping_tables.md
testing.md
ui_guide.md
understanding_explain_plans.md
uploads.md
utilities.md
value_stream_analytics.md
verifying_database_capabilities.md
what_requires_downtime.md
wikis.md
windows.md
writing_documentation.md

comments type stage group info description
false index, dev none Development See the Technical Writers assigned to Development Guidelines: https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments-to-development-guidelines Development Guidelines: learn how to contribute to GitLab.

Contributor and Development Docs

Learn the processes and technical information needed for contributing to GitLab.

This content is intended for members of the GitLab Team as well as community contributors. Content specific to the GitLab Team should instead be included in the Handbook.

For information on using GitLab to work on your own software projects, see the GitLab user documentation.

For information on working with GitLab's API, see the API documentation.

For information on how to install, configure, update, and upgrade your own GitLab instance, see the administration documentation.

Get started

Processes

Must-reads:

Complementary reads:

Development guidelines review

When you submit a change to GitLab's development guidelines, request a review from:

  • A member of your team or group, to check for technical accuracy.
  • For significant changes or proposals, request review from:
    • Engineering managers (FE, BE, DB, Security, UX, and others), according to the subject or process you're proposing.
    • The VP of Development (DRI) (@clefelhocz1), for final approval of the new or changed guidelines.
  • The Technical Writer assigned to dev guidelines, to review the content for consistency and adherence to documentation guidelines.

UX and Frontend guides

Backend guides

Performance guides

Database guides

See database guidelines.

Integration guides

Testing guides

Refactoring guides

Deprecation guides

Documentation guides

Internationalization (i18n) guides

Product Analytics guides

Experiment guide

Build guides

Compliance

Go guides

Shell Scripting guides

Domain-specific guides

Other Development guides

Other GitLab Development Kit (GDK) guides