Code examples for my TypeScript Static Analysis Hidden Gems talk. 💎

Overview

TypeScript Static Analysis Hidden Gems Code

Code samples for the talk, formed from my template-typescript-node-package.

👉 Slides available here! 👈

All Contributors Code Style: Prettier Contributor Covenant License: MIT Sponsor: On GitHub TypeScript: Strict

Usage

Install with yarn.

To start a Next dev server, yarn dev.

For different static analysis runs:

  1. yarn lint: ESLint
  2. yarn lint:prune: ts-prune
  3. yarn typestat:noImplicitAny: TypeStat, fixing noImplicitAny violations
  4. yarn typestat:incompleteTypes: TypeStat, fixing incompleteTypes violations

Development

See .github/CONTRIBUTING.md. Thanks! 💖

Contributors

Josh Goldberg
Josh Goldberg

🐛 💻 🖋 💡 🤔 🚇 🚧 📦 📆 👀 🛡️ 🔧 ⚠️
You might also like...

Ready to manipulate partitions file? Create a custom partition, apply custom security system, hide the partition and share your hidden data on the www

Ready to manipulate partitions file? Create a custom partition, apply custom security system, hide the partition and share your hidden data on the www

Paranoia 💊 Ready to manipulate partitions file? Create a custom partition, apply custom security system, hide the partition and share your hidden dat

Dec 29, 2022

Displays all hidden Channels, which can't be accessed due to Role Restrictions, this won't allow you to read them (impossible)

Who is the Creator ? The creator of this plugin is DevilBro I have completely reworked the plugin so that it can use the BDFDB library from DevilBro !

Dec 29, 2022

Displays all hidden Channels, which can't be accessed due to Role Restrictions, this won't allow you to read them (impossible)

Displays all hidden Channels, which can't be accessed due to Role Restrictions, this won't allow you to read them (impossible)

ShowHiddenChannels Plugin Returns DevilBro, author of this plugin, and BetterDiscord developers have deleted ShowHiddenChannels plugin from the offici

Sep 17, 2022

fully selfhosted multi-user web app for externally storing Reddit items (saved, created, upvoted, downvoted, hidden) to bypass Reddit's 1000-item listing limits

expanse fully selfhosted multi-user web app for externally storing Reddit items (saved, created, upvoted, downvoted, hidden) to bypass Reddit's 1000-i

Dec 30, 2022

In this project, you can create optional rooms and people can talk in the rooms

In this project, you can create optional rooms and people can talk in the rooms

CodeTalk In this project, you can create optional rooms and people can talk in the rooms. Login and Registration page Login page welcomes us. If you d

Mar 12, 2022

Talk about Azure SQL + Prisma

Talk - Power Up Your BackEnd Applications with Serverless Architecture & Azure SQL A demo related with the talk Power Up Your BackEnd Applications wit

Sep 13, 2022

Clubhouse is a new type of social network based on voice—where people around the world come together to talk, listen and learn from each other in real-time.

Clubhouse is a new type of social network based on voice—where people around the world come together to talk, listen and learn from each other in real-time.

Awesome Clubhouse The clubhouse is a new type of social network based on voice—where people around the world come together to talk, listen and learn f

Nov 9, 2022

Repository for the demos in the "Hello, Quarto!" talk

hello-quarto-demo Repository for the demos in the "Hello, Quarto!" talk Software RStudio: Version: Current release -- RStudio 2022.07.0+548 "Spotted W

Oct 12, 2022

Talk to anyone connected to your network, be it LAN or your hotspot. Doesn't require internet.

Talk to anyone connected to your network, be it LAN or your hotspot. Doesn't require internet.

Apophis CLI to talk to anyone connected to your network, be it LAN or your hotspot. Doesn't require internet. Installation Make sure you have NodeJS (

Oct 16, 2022
Comments
  • chore: added eslint-plugin-expect-type

    chore: added eslint-plugin-expect-type

    Sending as a reference, because this happens when you yarn lint:

    Oops! Something went wrong! :(
    
    ESLint: 8.24.0
    
    TypeError: Error while loading rule 'expect-type/expect': host.fileExists is not a function
    Occurred while linting /Users/josh/repos/typescript-static-analysis-hidden-gems/src/linting/types.test.ts
        at Object.fileExists (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:167620:63)
        at host.fileExists (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:117500:47)
        at getPackageJsonInfo (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44461:37)
        at loadModuleFromSpecificNodeModulesDirectory (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:45001:27)
        at loadModuleFromImmediateNodeModulesDirectory (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44982:58)
        at /Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44972:39
        at Object.forEachAncestorDirectory (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:8370:26)
        at loadModuleFromNearestNodeModulesDirectoryWorker (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44966:19)
        at loadModuleFromNearestNodeModulesDirectory (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44958:16)
        at tryResolve (/Users/josh/repos/typescript-static-analysis-hidden-gems/node_modules/typescript/lib/typescript.js:44053:34)
    
    opened by JoshuaKGoldberg 1
  • Action Required: Fix Renovate Configuration

    Action Required: Fix Renovate Configuration

    There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

    Location: .github/renovate.json Error type: The renovate configuration file contains some invalid settings Message: matchUpdateTypes: matchUpdateTypes should be inside a 'packageRule' only

    opened by renovate[bot] 0
  • The automated release is failing 🚨

    The automated release is failing 🚨

    :rotating_light: The automated release from the main branch failed. :rotating_light:

    I recommend you give this issue a high priority, so other packages depending on you can benefit from your bug fixes and new features again.

    You can find below the list of errors reported by semantic-release. Each one of them has to be resolved in order to automatically publish your package. I’m sure you can fix this 💪.

    Errors are usually caused by a misconfiguration or an authentication problem. With each error reported below you will find explanation and guidance to help you to resolve it.

    Once all the errors are resolved, semantic-release will release your package the next time you push a commit to the main branch. You can also manually restart the failed CI job that runs semantic-release.

    If you are not sure how to resolve this, here are some links that can help you:

    If those don’t help, or if this issue is reporting something you think isn’t right, you can always ask the humans behind semantic-release.


    No npm token specified.

    An npm token must be created and set in the NPM_TOKEN environment variable on your CI environment.

    Please make sure to create an npm token and to set it in the NPM_TOKEN environment variable on your CI environment. The token must allow to publish to the registry https://registry.npmjs.org/.


    Good luck with your project ✨

    Your semantic-release bot :package::rocket:

    semantic-release 
    opened by github-actions[bot] 9
Owner
Josh Goldberg
Full time open open source 💖✨ prev @Codecademy @microsoft ✨ @typescript-eslint maintainer, occasional @typescript contributor, side of accessibility
Josh Goldberg
Examples for Evolllution talk about omni api's

These are examples for the 2022 Evolution Conference. These are only intended for learning puposes so you can learn and develop your own tool set. P

null 3 Jun 3, 2022
A CLI application that allows you to easily grind your Steam items into gems.

Gemify Tool Gemify Tool is a CLI (Command Line Interface) application that allows you to easily convert your Steam items (backgrounds / emoticons) to

Jack Nolddor 3 Jun 17, 2022
Code Scanning/SAST/Static Analysis/Linting using many tools/Scanners with One Report - Scanmycode Community Edition (CE)

Star it If you like it, please give it a GitHub star/fork/contribute. This will ensure continous development ⭐ TLDR; To install it. Install docker and

Marcin Kozlowski 351 Dec 29, 2022
ec0lint - a static code analysis tool

ec0lint is a static code analysis tool that provides the users with useful hints on how to reduce the digital footprint of their webpages during the development process. Applying code changes suggested by ec0lint will make result with webpages that emit less carbon per visit, load quicker and are more space- efficient. The tool is open-source and community-driven.

ec0lint 127 Dec 5, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
A Cli that handles the creation of a basic express App that supports Husky configuration & static analysis tools

@phazero/create-express-app · Create express app is a CLI that can generate boiler plate code for setting up an express app. Installation & Usage npx

PhazeRo 13 Oct 29, 2022
Gofiber with NextJS Static HTML is a small Go program to showcase for bundling a static HTML export of a Next.js app

Gofiber and NextJS Static HTML Gofiber with NextJS Static HTML is a small Go program to showcase for bundling a static HTML export of a Next.js app. R

Mai 1 Jan 22, 2022
Create and Host a dark Web Site (Tor Hidden Service)

Tutorial: Hosting a site on Dark Web (Tor Hidden Service) Introduction Before starting, lets clear some questions that might come up in your mind: Wha

Arnav Kumar 16 Oct 18, 2022