LogoLogo
  • AppFlowy
    • โญStart here
      • Welcome to AppFlowy Docs
      • How to get help
      • Install AppFlowy
    • ๐Ÿ› ๏ธInstallation
      • ๐Ÿ–ฅ๏ธSystem Requirements
      • ๐Ÿ’ฟInstallation methods
        • Mac / Windows / Linux Packages
          • Installing on Linux
            • Installing & Setting up Flutter on Linux from Source
        • Docker
    • ๐ŸŒฑCommunity
      • ๐Ÿค™Get in contact
      • ๐Ÿ“”AppFlowy Mentorship Program
        • Program Guidance
        • Proposal Template
        • Pull Request Template
        • Mentorship 2023
          • Mentee Projects
            • Calendar View for AppFlowy Database
            • Custom Themes
            • Shortcuts and Customized Hotkeys for AppFlowy
            • Table
            • โญFavorites
            • Code Block
            • Outlines
            • Importers
            • AI Writers
            • Templates
          • Project Ideas
      • โœ๏ธWrite for AppFlowy
        • ๐Ÿ“ƒDrafts
          • [Draft] Use Case: Software Engineer
          • [Draft] Use Case: High School Students
          • [Draft] How to add a new property to appflowy database
      • ๐Ÿ‚Hacktoberfest
    • ๐Ÿ›ฃ๏ธRoadmap
    • ๐ŸŒ‹Product
      • ๐Ÿ’ฝData Storage
      • ๐ŸŽจCustomize and Style Content
      • โฎ๏ธDuplicate, Delete, and Restore
      • ๐Ÿ’ŽDatabases
        • ๐Ÿ”ขDatabase Properties
        • ๐Ÿ—ƒ๏ธManage Properties
      • โ“‚๏ธMarkdown
      • โŒจ๏ธShortcuts
      • ๐Ÿช„AppFlowy AI
      • ๐Ÿฆ™AppFlowy Local AI - Ollama
      • ๐ŸŽจThemes
      • โ˜๏ธAppFlowy Cloud
      • ๐ŸงฉAppFlowy Plugins
        • Table-view Databases
        • Kanban Board
        • Calendar
        • Auto Generator
        • Smart Edit
        • Code Blocks
        • Math Equations
        • Cover
        • Emoji
  • Documentation
    • ๐Ÿ’ŽSoftware Contributions
      • ๐ŸŸขGet started
      • ๐Ÿ’€Architecture
        • Frontend
          • Tauri
            • ๐Ÿ—บ๏ธCodeMap
          • Web
            • ๐ŸŒŸDesign Philosophy
          • Flutter
            • ๐Ÿ—บ๏ธProject Structure: CodeMap
            • ๐ŸงฎGrid
            • โš™๏ธSetting
          • Inter-Process Communication
          • User
            • User Data
            • Events & Notifications
          • Folder
            • Events & Notifications
          • Document
          • Database View
            • Events & Notifications
            • Grid
            • Calendar
            • Kanban Board
        • Backend
          • Initialize
          • Events
          • Delta(WIP)
          • Profiling
          • Database
        • Domain Driven Design
        • Proposals
      • ๐Ÿ—๏ธConventions
        • ๐Ÿ”คNaming Conventions
        • โŒจ๏ธCode Conventions
          • ๐ŸฆFlutter
        • ๐Ÿ™Git Conventions
      • ๐Ÿ’›Submitting Code
        • ๐ŸฆSetting Up Your Repositories
        • โคด๏ธSubmitting your first Pull Request
      • ๐ŸคŸCoding Standards and Practices
        • ๐Ÿ‘ฝRust Backend
    • ๐Ÿš€AppFlowy
      • ๐Ÿ‘พHow to contribute to AppFlowy
      • ๐Ÿ—๏ธBuilding from Source
        • ๐ŸŒณFlutter Setup
          • ๐ŸงBuilding on Linux
          • ๐ŸŽBuilding on macOS
          • ๐ŸชŸBuilding on Windows
        • ๐ŸŒWeb Setup
        • ๐Ÿ“กTauri Setup
      • โ˜๏ธDebugging with AppFlowy Cloud
      • ๐Ÿ”Debugging in VS Code
      • โ˜Ž๏ธTranslate AppFlowy
      • โ“Troubleshooting
      • ๐Ÿ‘ฎโ€โ™€๏ธLicenses
    • ๐Ÿ๏ธAppFlowy Editor
      • โŒจ๏ธHow to Implement Markdown Syntax To Style Text In AppFlowy Editor
      • ๐ŸงฉHow to Create a Plugin for AppFlowy Editor
      • ๐Ÿ‘ฎโ€โ™€๏ธLicenses
    • โ˜๏ธAppFlowy Cloud
      • ๐ŸŒˆArchitecture
      • โ˜€๏ธDeployment
  • Guides
    • Sync Desktop and Mobile
    • Self-Hosting AppFlowy
      • โ˜๏ธSelf-hosting AppFlowy with AppFlowy Cloud
      • ๐Ÿ†“Self-hosting AppFlowy for free Using Supabase
    • Import From Notion
  • Blog Highlights
    • ๐Ÿ”ฎDemystifying AppFlowy Editor's Codebase
  • Handbook
    • Core values
Powered by GitBook
On this page
  • Commit message guidelines
  • Committing Process
  • Before pushing your code
  • No warnings

Was this helpful?

Edit on GitHub
  1. Documentation
  2. Software Contributions
  3. Conventions

Git Conventions

PreviousFlutterNextSubmitting Code

Last updated 1 year ago

Was this helpful?

The following page describes how you should prepare your code before submitting it for a PR. If you want information on how to create your PR please see .

Before your code is merged into the main branch it will be peer reviewed so that it can be deployed for everyone to use. We go through your PR line by line and make sure that everything is on the up and up. You should always carefully craft your code submission in order for your reviewer to be able to more easily understand your changes.

Commit message guidelines

We use to validate each commit message. It is automatically configured to validate your commit messages when you setup your AppFlowy repo.

The commit message consists of type:subject

  • type must be one of [build, chore, ci, docs, feat, fix, perf, refactor, revert, style, test]

  • no space between type and the colon

  • subject is the commit message

For example:

  • git commit -m "fix: did something"

  • git commit -m "feat: did something"

  • git commit -m "refactor: did something"

Committing Process

Make small commits. A commit should be a small chunk of logic that is easy to understand and follow.

Before committing you should do a file compare on every file that you want to commit. Here, you will check to make sure that you are not committing temporary code or test code. You will also check for warnings, code formatting, and unneeded included packages.

Commit often. The process of adding commits keeps track of your progress as you work. Commits also create a transparent history of your work that others can follow to understand what youโ€™ve done and why.

Write clear, concise commit messages. Each commit has an associated commit message, which is a description explaining why a particular change was made.

Make PRs as soon as possible. In an open source project, we all depend on each others code. The faster you get your changes into the main branch, the less chances there are of conflicts.

Before pushing your code

Before creating your Pull Request you must ensure that your code adheres to the .

No warnings

There must be no warnings in the development or main branches. No developer can check-in code that contains warnings. This is to facilitate finding warnings and errors while you are coding. It would be extremely difficult for you to see that your code has warnings if the code base was already polluted with hundreds of warnings.

๐Ÿ’Ž
๐Ÿ—๏ธ
๐Ÿ™
Submitting your first Pull Request
commitlint