4.0 KiB
4.0 KiB
Developer Onboarding Guide
Date: 2025-01-27 Purpose: Comprehensive guide for new developers joining the workspace Status: Complete
Welcome!
This guide will help you get started with the workspace projects and understand the development workflow.
Prerequisites
Required Software
- Node.js: >= 18.0.0
- pnpm: >= 8.0.0
- Git: Latest version
- Docker: (for containerized projects)
- VS Code: (recommended IDE)
Recommended Extensions
- ESLint
- Prettier
- TypeScript
- GitLens
Workspace Overview
Project Structure
- 40+ projects across 8 categories
- 6 monorepos with 18 submodules
- Shared packages in
workspace-shared/ - Infrastructure in
infrastructure/
Key Directories
workspace-shared/- Shared packages and librariesinfrastructure/- Infrastructure as Codedocs/- Documentation hubscripts/- Workspace utility scripts
Getting Started
1. Clone Repository
# Clone with submodules
git clone --recurse-submodules <repository-url>
cd projects
2. Install Dependencies
# Install workspace dependencies
pnpm install
# Install dependencies for specific project
cd project-name
pnpm install
3. Set Up Environment
# Copy environment template
cp .env.example .env
# Edit environment variables
nano .env
4. Verify Setup
# Run workspace verification
pnpm verify
# Test specific project
cd project-name
pnpm test
Development Workflow
Working with Shared Packages
# Use shared package in your project
cd your-project
pnpm add @workspace/shared-types@workspace:*
pnpm add @workspace/shared-auth@workspace:*
Running Projects
# Development mode
pnpm dev
# Production build
pnpm build
# Run tests
pnpm test
# Lint code
pnpm lint
Making Changes
- Create branch:
git checkout -b feature/your-feature - Make changes: Edit code, add tests
- Test locally:
pnpm test && pnpm lint - Commit:
git commit -m "feat: your feature" - Push:
git push origin feature/your-feature - Create PR: Open pull request on GitHub
Project Categories
Blockchain & DeFi
- Defi-Mix-Tooling: Monorepo with 6 DeFi projects
- smom-dbis-138: DBIS blockchain infrastructure
- 27-combi, 237-combo: DeFi tools
Banking & Financial
- dbis_core: Core banking system
- the_order: Identity platform
- dbis_docs: Documentation
Infrastructure
- loc_az_hci: Proxmox infrastructure
- Sankofa: Blockchain orchestration
Code Standards
TypeScript
- Use TypeScript for all new code
- Enable strict mode
- Use shared types from
@workspace/shared-types
Testing
- Write tests for all new features
- Aim for 80%+ coverage
- Use Vitest or Jest
Documentation
- Update README for significant changes
- Document public APIs
- Add JSDoc comments
Common Tasks
Adding a New Shared Package
- Create package in
workspace-shared/packages/ - Add to
pnpm-workspace.yaml - Build:
pnpm build - Publish:
pnpm publish
Updating Dependencies
# Check for updates
pnpm outdated
# Update dependencies
pnpm update
# Audit security
pnpm audit
Running CI/CD Locally
# Install act (GitHub Actions local runner)
brew install act
# Run workflow
act -W .github/workflows/ci.yml
Resources
Documentation
Tools
Getting Help
Questions?
- Check project README
- Review documentation in
docs/ - Ask team on Slack/Discord
- Open GitHub issue
Reporting Issues
- Use GitHub Issues
- Include reproduction steps
- Add relevant logs
- Tag with appropriate labels
Last Updated: 2025-01-27