diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5d6a395..c6f685d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,8 +1,17 @@ -# Scope +# Contributing to `jupyterlab-deepnote` + +Thank you for your interest in contributing to the Deepnote JupyterLab extension! This guide will help you set up your development environment and understand the contribution workflow. This document is intended for contributors and maintainers working on the extension's source code. For general usage and installation instructions, please refer to the README. -# Contributing to `jupyterlab-deepnote` +## Prerequisites + +Before you begin, ensure you have the following installed: + +1. [Python](https://www.python.org/) 3.10 or later - Required for the server extension +2. [Node.js](https://nodejs.org/) v22 or later - Required for building the frontend extension +3. [JupyterLab](https://jupyterlab.readthedocs.io/) >= 4.4.0 - The extension requires JupyterLab 4.x +4. **GitHub Account** - With access to create [Personal Access Tokens](https://github.com/settings/tokens) ## Development install @@ -179,6 +188,39 @@ copier update --trust This will apply the latest template changes interactively. Review and commit any updates as appropriate. +## Making Changes + +### Code Style + +- **Python:** Follow PEP 8 guidelines +- **TypeScript:** The project uses ESLint and Prettier (configured in the project) + +### Pull Requests + +1. Fork the repository +2. Create a feature branch (`git checkout -b feature/amazing-feature`) +3. Make your changes +4. Write clear, descriptive commit messages +5. Run tests to ensure everything passes +6. Commit your changes +7. Push to your fork +8. Open a Pull Request with a clear description + ## Release workflow See [RELEASE](RELEASE.md) for details on the release process. We recommend using [Jupyter Releaser](https://github.com/jupyter-server/jupyter_releaser) and [PyPI trusted publishing](https://docs.pypi.org/trusted-publishers/) for secure and automated releases. + +## Additional Resources + +- [JupyterLab Extension Developer Guide](https://jupyterlab.readthedocs.io/en/stable/extension/extension_dev.html) +- [JupyterLab Extension Tutorial](https://jupyterlab.readthedocs.io/en/stable/extension/extension_tutorial.html) +- [Project Issues](https://github.com/deepnote/jupyterlab-deepnote/issues) + +## Questions? + +If you have questions or run into issues: + +1. Search existing [GitHub Issues](https://github.com/deepnote/jupyterlab-deepnote/issues) +2. Open a new issue with details about your problem + +Thank you for contributing! 🎉 diff --git a/README.md b/README.md index 54f7419..fa00a1a 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Deepnote is the data notebook for the AI era. `jupyterlab-deepnote` is a Jupyter ### Requirements - **Python**: 3.10 or higher -- **JupyterLab**: 4.0.0 or higher +- **JupyterLab**: 4.4.0 or higher ### Install via pip