# Steel Browser Documentation Welcome to the Steel Browser documentation! This directory contains comprehensive guides and references to help you understand, use, and contribute to Steel Browser. ## 📚 Documentation Overview ### Getting Started - **[Development Setup Guide](DEVELOPMENT_SETUP.md)** - Complete setup instructions for development environment - **[Contributing Guide](../CONTRIBUTING.md)** - How to contribute to the project - **[Troubleshooting Guide](TROUBLESHOOTING.md)** - Common issues and solutions ### Architecture & Design - **[Architecture Overview](ARCHITECTURE.md)** - System design and component relationships - **[Plugin Development Guide](PLUGIN_DEVELOPMENT.md)** - Creating custom plugins ### API Reference - **[API Documentation](http://localhost:3000/documentation)** - Interactive API reference (when running locally) - **[OpenAPI Schema](../api/openapi/schemas.json)** - Machine-readable API specification ## 🚀 Quick Links ### For New Contributors 1. Start with the [Contributing Guide](../CONTRIBUTING.md) 2. Set up your development environment using the [Development Setup Guide](DEVELOPMENT_SETUP.md) 3. Read the [Architecture Overview](ARCHITECTURE.md) to understand the system 4. Check out issues labeled [`good first issue`](https://github.com/steel-dev/steel-browser/labels/good%20first%20issue) ### For Plugin Developers 1. Read the [Plugin Development Guide](PLUGIN_DEVELOPMENT.md) 2. Study the [Architecture Overview](ARCHITECTURE.md) for system understanding 3. Browse existing plugins in `api/src/services/cdp/plugins/` 4. Join our [Discord](https://discord.gg/steel-dev) for plugin development discussions ### For Users 1. Check the main [README](../README.md) for basic usage 2. Browse the [Steel Cookbook](https://github.com/steel-dev/steel-cookbook) for examples 3. Use the [Troubleshooting Guide](TROUBLESHOOTING.md) if you encounter issues 4. Visit the [API Documentation](http://localhost:3000/documentation) for detailed API reference ## 🛠️ Documentation Structure ``` docs/ ├── README.md # This file - documentation overview ├── ARCHITECTURE.md # System architecture and design ├── DEVELOPMENT_SETUP.md # Development environment setup ├── PLUGIN_DEVELOPMENT.md # Plugin creation guide └── TROUBLESHOOTING.md # Common issues and solutions ``` ## 📖 External Resources ### Official Resources - **[Steel Browser Repository](https://github.com/steel-dev/steel-browser)** - Main repository - **[Steel Cookbook](https://github.com/steel-dev/steel-cookbook)** - Usage examples and recipes - **[Discord Community](https://discord.gg/steel-dev)** - Real-time support and discussions - **[Official Documentation](https://docs.steel.dev/)** - Comprehensive online docs ### Learning Resources - **[Puppeteer Documentation](https://pptr.dev/)** - Browser automation library - **[Fastify Documentation](https://www.fastify.io/)** - Web framework used in API - **[React Documentation](https://react.dev/)** - Frontend framework - **[TypeScript Handbook](https://www.typescriptlang.org/docs/)** - TypeScript language guide ## 🤝 Contributing to Documentation We welcome contributions to improve our documentation! Here's how you can help: ### Reporting Documentation Issues - **Missing Information**: If you can't find what you're looking for - **Outdated Content**: If documentation doesn't match current behavior - **Unclear Instructions**: If steps are confusing or incomplete - **Broken Links**: If links don't work or point to wrong resources ### Improving Documentation 1. **Fork the repository** and create a feature branch 2. **Make your changes** to the relevant documentation files 3. **Test your changes** by following the instructions you've written 4. **Submit a pull request** with a clear description of improvements ### Documentation Standards - **Use clear, concise language** that's accessible to all skill levels - **Include code examples** where applicable - **Add screenshots** for UI-related documentation - **Keep examples up-to-date** with current API and features - **Cross-reference related sections** to help users navigate ## 🔍 Finding What You Need ### By Use Case **I want to...** - **Use Steel Browser** → Start with the main [README](../README.md) - **Contribute code** → Read the [Contributing Guide](../CONTRIBUTING.md) - **Set up development** → Follow the [Development Setup Guide](DEVELOPMENT_SETUP.md) - **Create a plugin** → Study the [Plugin Development Guide](PLUGIN_DEVELOPMENT.md) - **Understand the system** → Read the [Architecture Overview](ARCHITECTURE.md) - **Fix an issue** → Check the [Troubleshooting Guide](TROUBLESHOOTING.md) ### By Component **I'm working with...** - **API/Backend** → [Architecture](ARCHITECTURE.md) + [API Docs](http://localhost:3000/documentation) - **Frontend/UI** → [Architecture](ARCHITECTURE.md) + UI source code - **Plugins** → [Plugin Development Guide](PLUGIN_DEVELOPMENT.md) - **Docker** → [Development Setup](DEVELOPMENT_SETUP.md) + [Troubleshooting](TROUBLESHOOTING.md) ## 📋 Documentation Roadmap ### Planned Additions - **Deployment Guide** - Production deployment instructions - **Security Guide** - Security best practices and configuration - **Performance Guide** - Optimization and scaling recommendations - **Testing Guide** - Comprehensive testing strategies - **Migration Guide** - Upgrading between versions - **FAQ** - Frequently asked questions ### Community Contributions Needed - **Platform-specific guides** (Windows, macOS, Linux variations) - **Integration examples** with popular tools and frameworks - **Video tutorials** for complex setup procedures - **Translated documentation** for non-English speakers - **Real-world use case studies** ## 💡 Getting Help If you can't find what you're looking for in the documentation: 1. **Search existing issues** on GitHub 2. **Ask in Discord** for real-time help 3. **Create a documentation issue** describing what's missing 4. **Check the [Steel Cookbook](https://github.com/steel-dev/steel-cookbook)** for practical examples ## 🎯 Documentation Goals Our documentation aims to be: - **Comprehensive** - Covering all aspects of Steel Browser - **Accessible** - Understandable by users of all skill levels - **Up-to-date** - Reflecting the current state of the project - **Practical** - Including real-world examples and use cases - **Community-driven** - Improved through user feedback and contributions --- **Happy learning and building with Steel Browser!** 🚀 *Last updated: [Current Date] - If you notice outdated information, please let us know!*