-
-
Notifications
You must be signed in to change notification settings - Fork 130
Contributors Guide
Antares SQL is an application based on Electron.js that uses Vue.js and Spectre.css as frontend frameworks.
For the build process it takes advantage of electron-builder.
This application uses Vuex as application state manager and electron-store to save the various settings on disc.
This guide aims to provide useful information and guidelines to everyone wants to contribute with this open-source project.
For every other question related to this project please contact me.
- kebab-case for IPC event names.
-
PascalCase for file names (with .vue extension) and including components inside others (
<MyComponent/>
). - "Base" prefix for base component names.
- "The" prefix for single-instance component names.
- Tightly coupled component names .
- Order of words in component names.
- kebab-case in templates for property and event names.
- snake_case for state names.
- camelCase for getter and action names.
- SNAKE_CASE (all caps) for mutation names.
The project includes ESlint and StyleLint config files with style rules. I recommend to set the lint on-save option in your code editor.
Alternatively you can launch following commands to lint the project.
Check if all the style rules have been followed:
npm run lint
Apply style rules globally if possible:
npm run lint:fix
The commit style adopted for this project is Conventional Commits.
Basicly it's important to have single scoped commits with a prefix that follows this style because Antares SQL uses standard-version to generate new releases and CHANGELOG.md file to track all notable changes.
For Visual Studio Code users may be useful Conventional Commits extension.
Visual Studio Code:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Electron in debugger",
"autoAttachChildProcesses": true,
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron-webpack",
"runtimeArgs": [
"dev"
],
"env": {},
"console": "integratedTerminal",
}
]
}
2020 © Fabio Di Stasio