👍🎉 First off, thanks for taking the time to contribute! 🎉👍
There are some ways of contributing to Sqlectron
- Report an issue
- Development
- Before opening the issue make sure there isn't an issue opened for the same problem
- Include the database client you were using during the error (mysql, postgres, etc.)
- Include the version of sqlectron-core you are using
- Include the stack trace error
It is required to use editorconfig. Furthermore, please write and run tests (/spec/db.spec.js
) before pushing any changes.
It will bring up some databases such as MySQL and PostgreSQL and run all the tests:
docker-compose run --rm test
You will need to bring up all the databases then run the tests through:
npm test
- Duplicate an existing client that is the most similar to the new client (e.g. postgresql). Then adapt the code for this new client with its own logic. But it MUST keep the same public API. The tests will help to ensure the API still the same.
- Include the new client into the list of supported dbs.
- Ensure the tests are passing. May require adapting the tests to handle any different input/output the new client might have from the other clients.
- Link sqlectron-core to sqlectron-gui and test it in the app.
- Include a logo
server-db-client-<client_name>.png
into the app.