Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Build: Streamline frontend config

Open
#999 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
42/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Quiet
Tech stack
firebase, gcp, github-actions, typescript, webpack

Research direction

Start by reading the example files, .gitignore, ci.yaml, cloudbuild.yaml, and the existing Webpack configuration, then review discussion in #996. Map how frontend builds currently obtain index.html and firebase_config.ts, and update the workflow, Cloud Build configuration, and build/deploy documentation so the streamlined procedure works without the example files.

Written by the indexing model from the issue text.

Description

stale

Background: Currently, in order to build the frontend workspace, one needs to create two files: index.html and firebase_config.ts. There are example files for each (index.example.html and firebase_config.example.ts). Minimally, one must copy the example files to build. The files themselves are .gitignored to prevent committing.

This design does prevent marginally sensitive values from being committed to the repo (such as the Firebase API key). However, it does not take full advantage of Webpack's ability to perform substitutions and inject environment variables.

Proposal:

  1. Delete both *.example.* files.
  2. Remove the exclusions from .gitignore.
  3. Make both files depend on Webpack-injected fields (no hard coded secrets).
  4. Check in the config-based files.
  5. Update GitHub Actions (`ci.yaml') as needed to build using the streamlined procedure.
  6. Update the Google Cloud Build (cloudbuild.yaml) as needed.
  7. Update documentation on how to build and deploy based on the updated method.

It may make sense to create files like firebase_config.dev.json and firebase_config.prod.json, the latter of which would be .gitignored. Then, in the Webpack build, bring in these files' contents for the particular kind of build being performed.

See #996 for discussion on streamlining the frontend build process.

Dominant language
TypeScript
Stars
97
Forks
42
Avg merge
1m
Merged PRs (30d)
28

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from PAIR-code/deliberate-lab

All issues in PAIR-code/deliberate-lab

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.