Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic documentation to the project #48

Merged
merged 3 commits into from
Nov 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Contributing to turtile
Thank you for considering contributing to turtile We welcome contributions from anyone who is interested in helping to improve the project.

# Getting Started
To get started with contributing to turtile, follow these steps:

- Familiarize yourself with the project by reading the [README](https://github.com/migueldeoleiros/turtile/blob/master/README.md) and exploring the codebase.
- Check out the [wiki](https://github.com/migueldeoleiros/turtile/wiki) for more detailed information on building, configuring, and using turtile.

# Submitting Changes
To submit changes to turtile, follow these guidelines:

- **Use Conventional Commits**: We use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) as our standard for commit messages. This means that your commit messages should follow the format `type: subject`, where `type` is one of `feat`, `fix`, `docs`, etc., and `subject` is a brief description of the changes.
- **Keep it Small**: Try to keep your changes small and focused on a single issue or feature. This makes it easier for us to review and merge your changes.
- **Test Your Changes**: Before submitting your changes, make sure to test them thoroughly to ensure that they work as expected. We recomend the use of [Act](https://nektosact.com/) for running the GitHub Actions locally.
- **Open a Pull Request**: Once you've made your changes, open a pull request against the `master` branch. We'll review your changes and provide feedback as needed.

Before you begin working on a feature or bug fix, please take a moment to contact us to discuss your plans. This will help ensure that your contribution aligns with our project goals and avoids duplicating effort.

# Types of Contributions
We welcome all types of contributions, including:

- **Bug Fixes**: Help us squash bugs and improve the stability of turtile.
- **New Features**: Add new features to turtile to make it more useful and customizable.
- **Documentation**: Help us improve our documentation to make it easier for others to use and contribute to turtile.
- **Code Refactoring**: Help us improve the codebase by refactoring existing code to make it more maintainable and efficient.
36 changes: 34 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,34 @@
# turtile
turtile 🐢 is a simple Wayland compositor written in C, based on [wlroots](https://gitlab.freedesktop.org/wlroots/wlroots)
# turtile 🐢
A simple and customizable tiling Wayland compositor based on [wlroots](https://gitlab.freedesktop.org/wlroots/wlroots)

# Overview
turtile was started as a passion and learning project, with the objective of getting a usable compositor that provides a customizable experience. It was written in C using [tinywl](https://gitlab.freedesktop.org/wlroots/wlroots/tinywl) as a base.

# Features
- Flexible CLI system for interactig with the compositor
- Easy to parse JSON output for the shell script enjoyers
- Readable config file making use of [libconfig](https://github.com/hyperrealm/libconfig)
- Support for vitually infinite desktops (haven't tried infinite, maybe stick with 50 max...)
- User defined keybinds that can run any shell command

# Getting started
Take a look at our [wiki](https://github.com/migueldeoleiros/turtile/wiki) page for detailed explanation on build, configuration and usage

# Contributing
turtile is a free and open source project and we wlcome contributions from the community.
If you find a bug or have a suggestion feel free to file an issue or create a new [discussion](https://github.com/migueldeoleiros/turtile/discussions).
If you are interested in contributing in any other way, please see our [CONTRIBUTING.md](https://github.com/migueldeoleiros/turtile/blob/master/CONTRIBUTING.md) file for more information.

# License
turtile is licensed under [GPL v3](https://github.com/migueldeoleiros/turtile/blob/master/LICENSE) !

# Acknowledgments
turtile was heavily inspired by other projects like:
- [tinywl](https://gitlab.freedesktop.org/wlroots/wlroots/tinywl)
- [sway](https://github.com/swaywm/sway)
- [hyprland](https://github.com/hyprwm/Hyprland)
- [dwl](https://codeberg.org/dwl/dwl)
- [vivarium](https://github.com/inclement/vivarium)
- [bspwm](https://github.com/baskerville/bspwm)

Special thanks to [Perry Werneck](https://github.com/PerryWerneck) for his help with the build system!
Loading