Developer
Source contributions are welcome! Use the GitHub pull request workflow to submit a change proposal.
These docs describe how to get involved in the development of the Slice project.
Slice source code contributions
The Slice application source repository is hosted on GitHub.
Requirements
- Python 3.6+ interpreter
- Build dependencies defined in our
dev-requirements.txt
file installed in a Python virtual environment
Development Environment Setup by Platform
The following instructions define how to build a Python virtual environment, install the appropriate Python dependencies, and launch the application to test your source edits.
macOS and Linux
Clone the repository with:
1git clone https://github.com/source-foundry/Slice.git
Create a Python 3.6+ virtual environment with:
1cd Slice
2python3 -m venv .venv
Install the required build dependencies with:
1source .venv/bin/activate
2pip install -r dev-requirements.txt
Make edits to the project source files locally and test your changes by launching the application with:
1make run
Add tests for your new source and run the test pytest- and tox-based test suite with:
1tox
Windows
The following instructions are validated in Powershell 7 on Windows 10.
Clone the repository with:
1git clone https://github.com/source-foundry/Slice.git
Create a Python 3.6+ virtual environment with:
1cd Slice
2python3 -m venv venv
Install the required build dependencies with:
1.\venv\Scripts\activate
2pip install -r dev-requirements.txt
Make edits to the project source files locally and test your changes by launching the application with:
1python src\run.py
Add tests for your new source and run the pytest- and tox-based test suite with:
1tox
Compile App Distributions by Platform
The following instructions demonstrate how to compile single file PyInstaller builds for platform-specific distribution.
Linux
We do not currently provide application package distributions for Linux distros.
macOS
Set up your macOS development environment as described in the section above, activate your Python virtual environment, and build the Slice.app
package bundle with the following command from the root of the source repository:
1make build-macos
Slice.app is found on the path dist/Slice.app
.
Windows
The following instructions work on Win 10.
Set up your Windows development environment as described in the section above, activate your Python virtual environment, and build the Slice.exe
application executable with the following command from the root of the source repository:
1pyinstaller --noconfirm .\target\PyInstaller-Windows\Slice-Windows.spec
Slice documentation contributions
The Slice documentation source repository is hosted on GitHub.
The Slice documentation is authored in Markdown files and automatically compiled to production HTML docs when the Markdown sources are merged to the main branch of the documentation repository. The Markdown files are located in the content
directory of the repository and follow the URL directory/file path structure that you see on the documentation site.
Requirements
- Go compiler
- hugo static site generator package
Install the Go compiler and hugo package on your system to test local changes before pushing a pull request.
Review local edits
Edit the Markdown files locally and examine your edits by running the following command from the root of the documentation repository:
1hugo serve
hugo compiles the static website and runs a local web server so that you can view changes. View your local edits by opening http://localhost:1313/
in your web browser. The site will automatically update each iteration of revisions if you allow the hugo serve
command to run while editing and saving content in the Markdown files.