jackvincentnz / lab Goto Github PK
View Code? Open in Web Editor NEWMono repo for experimenting with personal projects
Home Page: https://jack.geek.nz/lab/
License: MIT License
Mono repo for experimenting with personal projects
Home Page: https://jack.geek.nz/lab/
License: MIT License
https://github.com/bazelbuild/bazel-gazelle
Generate and cleanup build files
Fix build files
Update repositories
Automation of the above?
Information in README etc.
The schema types should be generated for use in the java resolvers.
Once build times drop below 20 mins, investigate adding a remote build cache.
GCP provides a storage solution with a free tier. Another alternative is to use an nginx instance.
Useful info:
Depends on rules_nodejs updated to Jasmine 4 first. Likely a breaking version.
https://github.com/bazelbuild/rules_nodejs/blob/a416bee9276bee1a7cd1156ef685cb0fa0804691/packages/jasmine/jasmine_runner.js#L119
onComplete()
is deprecated.
Things to consider:
Determine how to build and test solution in Github actions.
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates are currently rate-limited. Click on a checkbox below to force their creation now.
@typescript-eslint/eslint-plugin
, @typescript-eslint/parser
)@storybook/addon-essentials
, @storybook/addon-interactions
, @storybook/addon-links
, @storybook/blocks
, @storybook/react
, @storybook/react-vite
, storybook
)These updates encountered an error and will be retried. Click on a checkbox below to force a retry now.
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
@types/react
, @types/react-dom
)@apollo/client
, ghcr.io/apollographql/router
)@mantine/core
, @mantine/hooks
)These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.
WORKSPACE
aspect_bazel_lib v2.5.1
rules_proto 5.3.0-21.7
contrib_rules_jvm v0.24.0
rules_spring 2.3.1
rules_nodejs v6.0.5
aspect_rules_ts v2.2.0
aspect_rules_jest v0.17.0
io_bazel_rules_go v0.46.0
bazel_gazelle v0.35.0
rules_oci v1.7.4
distroless_java sha256:68e2373f7bef9486c08356bd9ffd3b40b56e6b9316c5f6885eb58b1d9093b43d
rules_pkg 0.10.1
aspect_rules_swc v1.2.2
aspect_rules_cypress v0.3.2
rules_multirun 0.8.1
.bazelversion
bazel 7.0.2
infra/local/docker-compose.yml
confluentinc/cp-zookeeper 7.6.0
confluentinc/cp-kafka 7.6.0
confluentinc/cp-schema-registry 7.6.0
ghcr.io/apollographql/router v1.40.1
learn/kafka/docker-compose.yml
confluentinc/cp-zookeeper 7.6.0
confluentinc/cp-kafka 7.6.0
confluentinc/cp-schema-registry 7.6.0
learn/kafka_transactional/docker-compose.yml
confluentinc/cp-zookeeper 7.6.0
confluentinc/cp-kafka 7.6.0
.github/workflows/main.yml
jlumbroso/free-disk-space v1.3.1
actions/checkout v4@b4ffde65f46336ab88eb53be808477a3936bae11
actions/cache v4
codecov/codecov-action v3
actions/checkout v4@b4ffde65f46336ab88eb53be808477a3936bae11
actions/setup-java v4
actions/setup-python v5
pre-commit/action v3.0.1
apps/journal_app/package.json
apps/tasklist/package.json
learn/vite/package.json
libs/bubbles/package.json
@mantine/core ^7.5.1
@mantine/hooks ^7.5.1
@tabler/icons-react ^2.24.0
react ^18.2.0
package.json
@apollo/client 3.9.5
@graphql-typed-document-node/core ^3.2.0
@mantine/core 7.5.1
@mantine/hooks 7.5.1
@tabler/icons-react 2.47.0
graphql 16.8.1
react ^18.2.0
react-dom ^18.2.0
web-vitals 3.5.2
@apollo/rover ^0.22.0
@graphql-codegen/cli 5.0.2
@graphql-codegen/client-preset 4.2.4
@jest/globals ^29.7.0
@storybook/addon-essentials 7.6.17
@storybook/addon-interactions 7.6.17
@storybook/addon-links 7.6.17
@storybook/blocks 7.6.17
@storybook/react 7.6.17
@storybook/react-vite 7.6.17
@storybook/testing-library 0.2.2
@testcontainers/kafka 10.7.2
@testing-library/jest-dom 6.4.2
@testing-library/react 14.2.1
@testing-library/user-event 14.5.2
@types/dockerode 3.3.24
@types/node 18.19.21
@types/react 18.2.63
@types/react-dom 18.2.20
@typescript-eslint/eslint-plugin 7.1.1
@typescript-eslint/parser 7.1.1
@vitejs/plugin-react 4.2.1
@vitest/ui 1.3.1
cypress 12.17.4
dockerode 4.0.2
eslint 8.57.0
eslint-config-prettier ^9.0.0
eslint-plugin-react 7.34.0
jest-cli 29.7.0
jest-environment-jsdom 29.7.0
jest-junit ^16.0.0
jest-transform-stub ^2.0.0
jsdom 24.0.0
prettier 3.2.5
storybook 7.6.17
testcontainers 10.7.2
tsconfig-to-swcconfig 2.7.0
typescript 5.3.3
vite 5.1.5
vitest 1.3.1
pnpm >=8.11.0
node >=18.18.0
People can pass --no-verify to commits to avoid commit checks. The same checks should be run again by CI.
New applications should be created in /projects
with common defaults.
E.g. as strict as possible, with routing etc.
E.g using something like apollo cache, or even suggesting we shouldn't do this and instead load all of the page state all in one query?
A common example is a list of objects, and then a details panel that allows editing of the values of the items in the list. How to manage updates to the list when the values are changed in the form in the details?
Ideally the details feature doesn't even know that there are other features that depend on the same state.
Add to mono repo features.
Draw out diagram of the optimized development workflow from onboarding through to production delivery
etc.
ts_project
should be wrapped to supply common inputs for node/web ts projects, and isolate solution code from change in rules_nodejs
https://prettier.io/docs/en/install.html
https://prettier.io/docs/en/editors.html
Ensure that rebased commits with lint/formatting errors are caught in CI.
E.g. cra that is committed and then fixed in subsequent commits in single PR, should it fail for the initial commit or if the lint + style is fine for the total PR diff then we are ok?
Switch to ESLint.
Is it possible, and worth it to avoid having to yarn
on the solution root?
In place of this can bazel build //... be used instead to install yarn and then make it available to all of the build tooling?
E.g. can commit hooks still work this way? Can they use bazel installed npm packages etc.?
Angular launch config:
{
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "ng serve",
"type": "pwa-chrome",
"request": "launch",
"preLaunchTask": "npm: start",
"url": "http://localhost:4200/"
},
{
"name": "ng test",
"type": "chrome",
"request": "launch",
"preLaunchTask": "npm: test",
"url": "http://localhost:9876/debug.html"
}
]
}
Angular task config:
{
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "start",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
},
{
"type": "npm",
"script": "test",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
}
]
}
It should be impossible to commit files that are not meeting the existing style of the repo.
Currently there is a weird circle from the graphql documents, out to the generation dir, back to the ts compilation in the lib.
This could be resolved by generated the graphql lib within the fe_library instead.
E.g.
Avoiding import { expect, it, render, screen } from "../../../../../tools/bazel/vitest/test-utils";
This could be achieved by building a (very) small package for this test tooling.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.