Files

117 lines
3.0 KiB
Markdown

# Tutorials
**Learning-oriented documentation** - Learn by doing with step-by-step guidance.
---
## What Are Tutorials?
Tutorials are **lessons** that teach you how to use ngit-grasp through practical, hands-on steps.
**Characteristics:**
- ✅ Learning-oriented (teach beginners)
- ✅ Practical (you follow along)
- ✅ Step-by-step with guaranteed outcomes
- ✅ Complete from start to finish
- ✅ Safe to experiment with
**Not tutorials:**
- ❌ Problem-solving guides (those are How-To)
- ❌ Technical references (those are Reference)
- ❌ Conceptual explanations (those are Explanation)
---
## Available Tutorials
### [Getting Started](getting-started.md)
**Time:** 15-20 minutes
**Learn:** Set up ngit-grasp development environment, build and test the code
**You'll accomplish:**
- Clone and build the project
- Set up Nix development environment
- Run tests successfully
- Understand project structure
**Start here if:** You're brand new to ngit-grasp
---
### [Running Your First Audit](first-audit.md)
**Time:** 10-15 minutes
**Prerequisites:** [Getting Started](getting-started.md) completed
**Learn:** Use grasp-audit to check GRASP compliance
**You'll accomplish:**
- Run compliance tests against a relay
- Interpret audit results
- Use the audit tool library
- Understand GRASP requirements
**Start here if:** You want to test GRASP compliance
---
## Planned Tutorials
### Deploying Your First GRASP Relay
**Status:** 🔜 Planned (waiting for main server implementation)
**You'll learn:**
- Deploy ngit-grasp to production
- Configure for your domain
- Set up HTTPS with reverse proxy
- Create your first repository
---
### Contributing Your First PR
**Status:** 🔜 Planned
**You'll learn:**
- Find an issue to work on
- Set up development environment
- Make changes and test
- Submit a pull request
---
## How to Use Tutorials
1. **Follow in order** - Each step builds on previous ones
2. **Actually do the steps** - Don't just read, type the commands
3. **Expect success** - If something fails, check troubleshooting
4. **Learn by doing** - Understanding comes from practice
**Not sure if this is what you need?**
- Want to solve a specific problem? → [How-To Guides](../how-to/)
- Looking for technical details? → [Reference](../reference/)
- Want to understand the design? → [Explanation](../explanation/)
---
## Contributing Tutorials
When writing a tutorial:
**DO:**
- ✅ Start with a clear learning goal
- ✅ Provide complete, tested steps
- ✅ Include expected output
- ✅ Add troubleshooting section
- ✅ Keep it focused (one topic)
- ✅ Test with a beginner
**DON'T:**
- ❌ Assume prior knowledge (or state prerequisites clearly)
- ❌ Skip steps ("obviously you would...")
- ❌ Explain every detail (link to Explanation docs)
- ❌ Try to cover everything (keep scope small)
See [Diátaxis: Tutorials](https://diataxis.fr/tutorials/) for detailed guidance.
---
*Part of the [ngit-grasp documentation](../README.md) using the [Diátaxis](https://diataxis.fr/) framework.*