Skip to content

Commit 6fc2912

Browse files
committed
add new contributions.md
1 parent 36874a8 commit 6fc2912

File tree

3 files changed

+162
-1
lines changed

3 files changed

+162
-1
lines changed

config/project/doc-index.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,8 @@
231231
'6.x' => [
232232
'introduction' => [
233233
'what-is-nylo',
234-
'requirements'
234+
'requirements',
235+
'contributions'
235236
],
236237

237238
'getting-started' => [

config/project/packages-index.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,9 @@
1616
[
1717
'label' => 'Error Stack',
1818
'link' => 'error-stack'
19+
],
20+
[
21+
'label' => 'Scaffold UI',
22+
'link' => 'scaffold-ui'
1923
]
2024
];
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# Contributing to Nylo
2+
3+
---
4+
5+
<a name="section-1"></a>
6+
- [Introduction](#introduction "Introduction to contributing")
7+
- [Getting Started](#getting-started "Getting started with contributions")
8+
- [Development Guidelines](#development-guidelines "Development guidelines")
9+
- [Submitting Changes](#submitting-changes "How to submit changes")
10+
- [Reporting Issues](#reporting-issues "How to report issues")
11+
12+
<a name="introduction"></a>
13+
<br>
14+
15+
## Introduction
16+
17+
Thank you for considering contributing to Nylo!
18+
19+
This guide will help you understand how you can contribute to the micro-framework, no matter your experience level.
20+
21+
Whether you're a beginner or an experienced developer, your contributions are valuable to the Nylo community.
22+
23+
<a name="getting-started"></a>
24+
<br>
25+
26+
## Getting Started
27+
28+
Before you begin contributing to Nylo, please ensure you have the following:
29+
30+
1. Fork the Nylo repositories
31+
- <a href="https://github.com/nylo-core/nylo/fork" target="_BLANK">Nylo</a>
32+
- <a href="https://github.com/nylo-core/framework/fork" target="_BLANK">Framework</a>
33+
- <a href="https://github.com/nylo-core/support/fork" target="_BLANK">Support</a>
34+
2. Clone your forks locally
35+
- `git clone https://github.com/nylo-core/nylo`
36+
- `git clone https://github.com/nylo-core/framework`
37+
- `git clone https://github.com/nylo-core/support`
38+
3. Open the repositories in your preferred code editor
39+
40+
## Set up your development environment
41+
42+
Open the <a href="https://github.com/nylo-core/nylo" target="_BLANK">Nylo</a> repository in your code editor and add the following:
43+
44+
**pubspec.yaml**
45+
``` yaml
46+
...
47+
dependency_overrides:
48+
nylo_framework:
49+
path: ../framework # Path to your local framework repository
50+
nylo_support:
51+
path: ../support # Path to your local support repository
52+
```
53+
54+
Next, run `flutter pub get` to install the dependencies.
55+
56+
Now, you should be able to run the Nylo project with your local framework and support repositories.
57+
58+
Any changes you make to the framework or support repositories will be reflected in the Nylo project.
59+
60+
<a name="submitting-changes"></a>
61+
<br>
62+
63+
### Submitting Changes
64+
65+
If you have an idea, it's best to discuss it with the community first.
66+
67+
You can do this by creating a new discussion on GitHub <a href="https://github.com/nylo-core/nylo/discussions" target="_BLANK">here</a>.
68+
69+
Once you have a clear idea of the feature you want to add, you can start working on it.
70+
71+
``` bash
72+
# Create a new branch
73+
git checkout -b feature/your-feature-name
74+
```
75+
76+
Once you've completed the feature, commit your changes and push them to your fork.
77+
78+
``` bash
79+
# Commit your changes
80+
git commit -m "Add: Your feature description"
81+
82+
# Push your changes
83+
git push origin feature/your-feature-name
84+
```
85+
86+
Finally, submit a pull request into the repository you forked from.
87+
88+
89+
<a name="development-guidelines"></a>
90+
<br>
91+
92+
## Development Guidelines
93+
94+
When contributing to Nylo, please follow these guidelines:
95+
96+
### Code Style
97+
98+
- Follow the official <a href="https://dart.dev/guides/language/effective-dart/style" target="_BLANK">Dart style guide</a>
99+
- Use meaningful variable and function names
100+
- Write clear comments for complex logic
101+
- Include documentation for public APIs
102+
- Keep code modular and maintainable
103+
104+
### Testing
105+
106+
Before submitting your changes:
107+
108+
- Verify backwards compatibility
109+
- Check for any breaking changes
110+
- Test your changes on IOS and Android devices
111+
112+
### Pull Request Guidelines
113+
114+
- Provide a clear description of your changes
115+
- Reference any related issues
116+
- Include screenshots or code examples if applicable
117+
- Ensure your PR addresses only one concern
118+
- Keep changes focused and atomic
119+
120+
<a name="reporting-issues"></a>
121+
<br>
122+
123+
## Reporting Issues
124+
125+
When reporting issues:
126+
127+
1. Use the GitHub issue tracker
128+
2. Check if the issue already exists
129+
3. Include detailed reproduction steps
130+
4. Provide system information:
131+
- Flutter version `flutter --version`
132+
- Nylo framework version from pubspec.yaml, e.g. `nylo_framework: ^6.5.0`
133+
- Device information (if relevant)
134+
135+
Example of a good issue report:
136+
``` markdown
137+
### Description
138+
Brief description of the issue
139+
140+
### Steps to Reproduce
141+
1. Step one
142+
2. Step two
143+
3. Step three
144+
145+
### Expected Behavior
146+
What should happen
147+
148+
### Actual Behavior
149+
What actually happens
150+
151+
### Environment
152+
- Flutter: 3.x.x
153+
- Nylo: x.x.x
154+
- OS: macOS/Windows/Linux
155+
- Device: iPhone 13/Pixel 6 (if applicable)
156+
```

0 commit comments

Comments
 (0)