npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@mytw/people-frontend

v0.1.5

Published

## Description This is the myTW Requests tab's frontend code base.

Downloads

195

Readme

mytw-people-frontend

Description

This is the myTW Requests tab's frontend code base.

Business Context

People Ops team i.e. People Support team is facing multiple challenges while working on tickets received from TWers as identified during workshop.

Transformers team has proposed a solution where myTW becomes a one step solution for TWers to raise a request to People Ops team and TWer should be navigated to Zendesk through link provided for newly raised ticket from TWer. For People Ops team, the challenges such as sorting and training of tickets, will be solved through One Zendesk creation.

Possible release channels

  • NPM Package (current)

Diagram

Context

Initial Setup (common for all release channels)

1. Project name

a) manifest (package.json)
{
  "name": "@mytw/people-frontend",
  "main": "dist/mytw-people-frontend.js",
  "types": "dist/mytw-people-frontend.d.ts"
}

2. Context in CircleCI

Create context in circleci and replace the context in config.yml with your context name

The following environment variables should be set. Contact for access to 1password vault access to the credentials

export NPM_TOKEN

Development

Architecture

MyTW use micro front-end architecture, each tab(route) has its own code repository.

Tech stack

Typescript, React 17, Single Spa, Material UI

Jest、Webpack

Infra: Terraform, Amazon cloud

CI/CD: Circle CI

Local start step

Recommend to replace the source of resource in dev env(https://dev.non-prod.my.thoughtworks.net) which one you want to debug.

  1. use yarn install to get all packages
  2. use yarn start, get the frontend server url, copy the server url
  3. open dev env website's devtools, enter localStorage.setItem("devtools",true); in console table. Will see a button like{...} after refresh the page.
  4. Click the {...} button and select the module named @mytw/people-frontend, use the local frontend service origin to override, then refresh the page.
  5. Can debug with local service now.

Releasing Package (only for teams who choose npm as CDN)

1. Version

Version using the available script and it will create commit and tag for the version bump

yarn version:patch
yarn version:minor
yarn version:major

2. Pushing changes including tags

git push origin main --tags

3. CircleCI Workflow

The Publish NPM Package Job is enabled in the workflow only for tag publish in git. Make sure All branches is selected in the branch filter to see the tag commit in CircleCI

Unpublish in case of emergency or security threats

Run the following command. Once you unpublish you cannot republish using the same version.

 npm unpublish @mytw/[email protected] --force

4. Minimal Setup for CircleCI

Refer CircleCI for minimal setup. You can additionally add any workflow. The workflow contains immediate deployment strategy for import-maps includes

- NOTE: ANY WORKFLOW SHOULD HAVE SEMGREP IN PLACE TO AVOID SECURITY INCIDENTS