78 lines
1.9 KiB
Markdown
78 lines
1.9 KiB
Markdown
# slack5-1770544098
|
|
|
|
Slack Path 5: Full SDLC Lifecycle
|
|
|
|
## Quickstart
|
|
|
|
```bash
|
|
# Clone the repo
|
|
git clone https://git.threesix.ai/jordan/slack5-1770544098.git
|
|
cd slack5-1770544098
|
|
|
|
# Install dependencies
|
|
./scripts/install.sh
|
|
|
|
# Start local development
|
|
./scripts/dev.sh
|
|
```
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
slack5-1770544098/
|
|
├── services/ # Go API services
|
|
├── workers/ # Background workers
|
|
├── apps/ # Frontend applications
|
|
├── cli/ # CLI tools
|
|
├── packages/ # Shared TypeScript packages
|
|
├── pkg/ # Shared Go packages
|
|
└── scripts/ # Development scripts
|
|
```
|
|
|
|
## Scripts
|
|
|
|
| Script | Description |
|
|
|--------|-------------|
|
|
| `./scripts/dev.sh` | Start local development environment |
|
|
| `./scripts/install.sh` | Install all dependencies |
|
|
| `./scripts/quality.sh` | Run quality checks on all components |
|
|
| `./scripts/discover.sh` | List all components in the monorepo |
|
|
|
|
## API Documentation
|
|
|
|
API documentation is automatically generated from OpenAPI specs and deployed to:
|
|
|
|
- **Docs**: https://docs.dktxjzt3.threesix.ai
|
|
- **OpenAPI Spec**: Each service exposes `/openapi.json`
|
|
|
|
To regenerate docs locally:
|
|
|
|
```bash
|
|
# Start services locally
|
|
./scripts/dev.sh
|
|
|
|
# Generate Slate markdown from OpenAPI specs
|
|
./docs/scripts/generate-docs.sh http://localhost
|
|
|
|
# Preview docs (optional - requires Ruby)
|
|
cd docs && bundle install && bundle exec middleman serve
|
|
```
|
|
|
|
Documentation is automatically rebuilt on every push to `main`.
|
|
|
|
## Adding Components
|
|
|
|
Components are added via the rdev API:
|
|
|
|
```bash
|
|
# Add a Go service
|
|
curl -X POST $RDEV_API_URL/projects/slack5-1770544098/components \
|
|
-H "X-API-Key: $RDEV_API_KEY" \
|
|
-d '{"type": "service", "name": "auth-api"}'
|
|
|
|
# Add a React app
|
|
curl -X POST $RDEV_API_URL/projects/slack5-1770544098/components \
|
|
-H "X-API-Key: $RDEV_API_KEY" \
|
|
-d '{"type": "app", "name": "dashboard", "template": "app-react"}'
|
|
```
|