Skip to main content

Get started in three steps

Set up Baselink locally and deploy your first instance to start tracking Git repository analytics and developer activity insights.
1

Set up your local environment

  1. Install dependencies: pnpm install
  2. Configure AWS credentials: pnpm run aws:profile
  3. Generate local environment: pnpm run generate:env:local
  4. Start the services:
    pnpm run start:api         # Terminal 1
    pnpm run start:admin       # Terminal 2
    pnpm run start:web         # Terminal 3
    
  5. Open http://localhost:5173 to see your user (web) portal live!
Your preview updates automatically as you edit files.
2

Deploy to staging

Deploy your Baselink instance to AWS staging environment:
pnpm run deploy:staging
This will create all necessary AWS resources and deploy your application.
After deployment, configure your Baselink instance:
  1. Add your first admin user: pnpm run add:user:staging
  2. Get your staging URLs: pnpm run urls:staging
  3. Connect your GitHub repositories through the admin portal
  4. Configure webhooks for real-time data collection
Your staging environment is isolated and safe for testing!
3

Deploy to production

  1. Test your staging environment thoroughly
  2. Deploy to production: pnpm run deploy:production
  3. Add production admin users: pnpm run add:user:production
  4. Get production URLs: pnpm run urls:production
  5. Your Baselink instance is now live and collecting data!

Architecture Overview

Baselink is built as a fullstack serverless app using modern technologies:
  • Frontend: React + Vite (Admin & User Portal)
  • Backend: Node.js + Express (API Layer)
  • Monorepo: Managed via pnpm
  • CI/CD: GitHub Actions + Serverless Framework
  • Database: AWS DynamoDB
  • Auth: AWS Cognito

AWS Services Used

Baselink runs fully on AWS and uses the following services:
  • Amazon Cognito
  • S3 (static site + file storage)
  • Lambda (API functions)
  • DynamoDB (Data storage)
  • API Gateway
  • CloudFormation
  • CloudWatch
  • Route53
  • Systems Manager
  • SNS (Webhook notifications)
  • CloudFront

Folder Structure

baselink/
├── packages/
│   ├── api/          # API service (Node.js + Express)
│   ├── admin/        # Admin portal (React)
│   ├── web/          # User web interface
│   └── shared/       # Shared utilities and types
├── scripts/          # Dev tooling & setup scripts
├── infra/            # Serverless & IaC configs
└── README.md

Roles & Permissions

Baselink provides fine-grained access management:
RoleAccess Level
1. AdminFull control across all teams and repos
2. ManagerTeam-level control, limited user management
3. DeveloperCan view/edit only their own activity
4. ViewerRead-only access to dashboards and metrics

Cleanup

To remove all staging deployments:
pnpm run remove:staging
⚠️ This will delete all resources and data for the staging environment.
  • Engineering Teams who want Git-based visibility
  • Team Leads managing multiple developers/repos
  • Product Managers needing clearer release cycles
  • DevOps Engineers improving CI/CD transparency
  • Cloud-native
  • Secure (hosted in your AWS)
  • Real-time Git data
  • Fullstack TypeScript
  • Serverless & Scalable
  • Fast setup & local dev supported
  • Designed by developers, for developers

Next steps

Now that you have Baselink running, explore these key features:

API Documentation

Explore the comprehensive API reference for integrating with Baselink.

Development Guide

Learn how to develop and customize Baselink locally.

User Manual

Understand how to write and organize your documentation.

AI Tools

Discover AI-powered tools for documentation and development.
Need help? See our full documentation or contact support through the Support button in the navigation bar.