Scaffold Initial Project for Development

Created on 9 June 2023, over 1 year ago
Updated 15 August 2023, over 1 year ago

Problem/Motivation

Determine what structure and tooling needs to be in place to support development on our first POC. There are likely some must-haves, along with things that we could take care of after initial development has started.

Proposed resolution

Likely musts:
* Monorepo / workspace structure with base API client, and JSON:API client workspaces.
* TypeScript Config.
* Dev and Build scripts.
* Linting and formatting
* Automated tests
* Gitlab CI running linting and tests.

Things we could defer:
* Publishing workflow
* Automated security audits (don't want to wait too long on this, need to do before publishing for sure)
* The ability to generate API documentation (again, wouldn't want to wait too long for this either)

Remaining tasks

* Gather feedback.
* Determine what else falls into 'musts'
* Scaffold the codebase.
** pnpm - Monorepo / workspace structure with base API client, and JSON:API client workspaces. (completed on scaffold branch)
** Typescript - basic builds with tsup (completed on scaffold branch)
** Eslint config as outlined in https://www.drupal.org/project/api_client/issues/3374157 β†’ (completed in 'scaffold' branch)
** Vitest (completed on scaffold branch)
** Typedoc (completed on scaffold branch)
** Prettier (completed on scaffold branch)
** tsc for typechecking (completed on scaffold branch)
** Husy checks on push (completed on scaffold branch)
* Gitlab CI
** Add examples/demo - or dev script of some kind? (completed on scaffold branch)

πŸ“Œ Task
Status

Fixed

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States brianperry

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024