Skip to main content

Onboarding Document

[Insert NPO name] Onboarding Timeline

Pre-onboarding

Goal:

GetaccessNPO [Insert NPO name, hyperlink to their website] Primary Contacts [Insert Tech Lead and preparePM yourcontact environment(Name, role, position, email, discord handle)] Repository Links [List of repositories used for the project in the following format (respository name with hyperlink to gh repo)] Issue Tracker [Direct link to gh issue tracker]

Overview

Provide a short description of the NPO [What do they do? Where are they located? Group of people their services are focused on?]

ActionProvide Items:a high-level description of what the project does, what problem does it solve, who will be using it?

Architecture

Include a short explanation of the system's main components:

  • JoinCore our discord.Services
  • RequestFrameworks. accessIf to:you
      are
    • https://github.com/stevensblueprint/using a niche framework (PayloadCMS, Glom) include a link to their documentation.
    • AWS accounts
    Databases ReviewAuthentication Blueprint's engineering handbook (style & code standards) Install pre-requisites
      Node >= 18, Python >= 3.10, Docker, Docker Compose, AWS CLI, CDK v2
      Week 1

      Goal: Understand Blueprint’s deployment model and CDK architecture.

      Action Items:

        Understand how CDK synthesizes CloudFormation templates

        Study ECS service and ALB definitions, environment variable propagation, and secret management.

         Exercise:

          Add an encrypted S3 bucket via CDK.

          Grant ECS task IAM permissions using `iam.PolicyStatement`.

          Deploy with `cdk deploy`

          mechanisms

          ##[Insert Weekthe 2architecture document AWScreated Advancedbefore Topicsproject kickoff]

          Challenges

          **Goal:**Give Movea fromprioritized CDKlist basicsof all main challenges your team is currently facing and a possible path to advancedsolve AWSthem. infrastructureEncourage patterns.


          ### Action Items

          - Networking and Security:

            - Diagram the VPC, subnets, and routing in an existing stack.

            - Add a VPC endpoint for S3 or Secrets Manager using CDK.

            - Explain ECS service isolation (public ALBthem to private RDS instance).

          - Compute Scaling and Observability:

            - Implement ECS autoscaling based on CPU/memory metrics.

            - Add log drivers (AWSLogs or FireLens) for structured CloudWatch logging.

          - Exercise:

            - Build a reusable ECS microservice construct with environment variables, secrets, and IAM roles.

            - Parameterize for development and staging environments.

          - Deliverable: Open a pull request adding your CDK constructcontribute to the sharedproblem internalsolving library.brainstorm.


          ---


          ## Week 3 – FastAPI Deep Dive (Backend Layer)

          **Goal:** Master FastAPI for scalable backend development with asynchronous I/O and strong typing.


          ### Action Items

          - Architecture Review:

            - Explore routers, dependencies, middlewares, and ORM models.

            - Review how Blueprint services use SQLAlchemy and Pydantic models.

          - Advanced Topics:

            - Build asynchronous endpoints using `asyncpg` and connection pooling.

            - Implement middleware for structured logging and correlation IDs.

            - Introduce background processing with `BackgroundTasks` or Celery.

          - Exercise:

            - Implement a new CRUD route using async SQLAlchemy.

            - Add nested Pydantic validation and request/response models.

            - Write end-to-end tests using `pytest-asyncio`.

          - Deliverable: Merge a PR with a new FastAPI module, achieving 80%+ test coverage.


          ---


          ## Week 4 – React Architecture and Frontend Systems

          **Goal:** Build production-ready, performant React interfaces aligned with Blueprint’s design standards.


          ### Action Items

          - Codebase Analysis:

            - Review the Blueprint web template (React + Vite + Tailwind).

            - Understand component hierarchy, React Query patterns, and context usage.

          - Advanced Topics:

            - Data caching and synchronization using React Query.

            - Optimistic updates and error boundaries.

            - Component composition following atomic design principles.

          - Exercise:

            - Build a paginated table with infinite scrolling backed by an internal API.

            - Add skeleton loaders and form validation.

          - Testing:

            - Write component tests with Jest and Testing Library.

            - Add end-to-end UI tests using Playwright or Cypress.

          - Deliverable: Submit a PR containing a complete and tested React feature.


          ---


          ## Week 5 – System Integration and CI/CD

          **Goal:** Integrate backend and frontend systems and manage deployments independently.


          ### Action Items

          - Connect the FastAPI backend module with the React frontend.

          - Configure GitHub Actions:

            - Create lint and test workflows for web and server.

            - Add workflow triggers for pull requests and merges to `main`.

          - Extend CDK stack:

            - Include API and web containers in ECS service definitions.

            - Use multi-stage Docker builds for production images.

          - Create `.github/workflows/deploy.yml` for ECS deployments using OIDC role assumption.

          - Deploy to the sandbox environment and validate via health checks.

          - Deliverable: End-to-end feature deployed successfully on ECS.