type-fest
markdown-here
type-fest | markdown-here | |
---|---|---|
32 | 73 | |
13,261 | 59,476 | |
- | - | |
9.0 | 0.0 | |
8 days ago | over 1 year ago | |
TypeScript | JavaScript | |
Creative Commons Zero v1.0 Universal | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
type-fest
-
Adding type safety to object IDs in TypeScript
Related: https://github.com/sindresorhus/type-fest/blob/main/source/o...
-
Enforcing Localization through Types
Typescript doesn’t natively provide an Opaque type that we can use to define a string that has already been localized. If the data looks like a string, Typescript will consider it a string. We can however use utility types that simulate opaque types, like the Opaque definition in type-fest:
- Is there a better way to do read-only types
-
Boost Your JavaScript with JSDoc Typing
With these powerful features, you can create dynamic and expressive types. One last thing I want to mention before moving on, is that you can install libraries with which you can add more types to your project like type-fest or utility-types. These libraries contain a lot of useful types that you can use in your project.
-
Essential Code Organization Principles
Also, it’s not as restrictive as mutability tools — if you know what you are doing and want to ignore this limitation for a particular case, you can apply the -readonly modifier or the Writeable type from type-fest or ts-essentials.
-
Best practice for typing server data for get vs post in client code
Remember you can derive one type from another type so you can make sure they don't diverge. SetOptional type util
-
All JavaScript and TypeScript features of the last 3 years explained
Some folks have built whole SQL databases and DSL compilers in the TS type system. These tend to be toy projects with disclaimers not to use them. But the type system being Turing complete[0] (for better or worse), pretty much whatever you can imagine. This project[1] is one I actually return to frequently for practical ideas.
0: https://github.com/microsoft/TypeScript/issues/14833
1: https://github.com/sindresorhus/type-fest
-
Question on how to handle an object that can have different states and avoid assertions.
Have a look at SetRequired and SetOptional in type-fest
-
Preventing more parameters being passed than needed by a type definition?
Try the Exact method provided by Type Fest, looks like it does what you're looking for
-
Creating a derived type of only required parameters from a base type?
This is a fairly common scenario and available via libraries like type-fest or implementable with a couple lines of code.
markdown-here
-
100+ FREE Resources Every Web Developer Must Try
Markdown Cheat Sheet: Markdown syntax guide for creating rich text formatting.
-
How to create a good README.md file
# Heading 1 ## Heading 2 ### Heading 3 Emphasis, aka italics, with *asterisks* or _underscores_. Strong emphasis, aka bold, with **asterisks** or __underscores__. Combined emphasis with **asterisks and _underscores_**. 1. First ordered list item 2. Another item ⋅⋅* Unordered sub-list. 1. Actual numbers don't matter, just that it's a number ⋅⋅1. Ordered sub-list 4. And another item. [I'm an inline-style link](https://www.google.com) [I'm an inline-style link with title](https://www.google.com "Google's Homepage") ![descriptive alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 1")
- What is the point of this feature
-
No Markdown support in Google Drive after all these years
It's definitely a workaround, but I use a Chrome extension to work around this a bit. I use "Markdown Here" to add a "turn Markdown text to formatted text" button to my Chrome bar:
https://markdown-here.com/
And then I use it on plain Markdown text in a GMail compose window. The rich formatted output it produces can then be pasted into a Google Doc, and it comes out really nicely, including support for headers, sub-headers, links, code blocks, and the rest. The main issue is that this is a one-way process, but so long as you keep the .md source somewhere else, lets you share a richly-formatted doc with others for final commenting/editing/etc.
-
Which one for “semi-formal to casual” in south dakota?
Here is a reference guide for the basic syntax of Markdown. Experiment and enjoy!
-
Newbie question
Means I made changes to the post formatting using Markdown https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
-
School Project looking for Review
markdown syntax Can be used to format your read me.
-
Best Practices for Writing on DEV: Formatting
Proper formatting is key to ensure that your post is readable, helpful, and polished. Our post editor uses Markdown and Jekyll Front Matter to format posts.
-
Boost Your JavaScript with JSDoc Typing
You can also use more complex Markdown features like lists and tables. Check out the [Markdown Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) from Adam Pritchard for more information. ### Other JSDoc tags 📚 There are a few other JSDoc tags that you may find useful: - `@function` or `@func`: Documents a function or method. - `@class`: Documents a class constructor. - `@constructor`: Indicates that a function is a constructor for a class. - `@extends` or `@augments`: Indicates that a class or type extends another class or type. - `@implements`: Indicates that a class or type implements an interface. - `@namespace`: Groups related items, such as functions, classes, or types, under a common namespace. - `@memberof`: Specifies that an item belongs to a class, namespace, or module. - `@ignore`: Tells JSDoc to exclude an item from the generated documentation. - `@deprecated`: Marks a function, class, or property as deprecated, indicating it should no longer be used. - `@since`: Documents the version when an item was introduced. And many more. You can find a full list of JSDoc tags [here](https://jsdoc.app/). Ok ok, enough of the theory. Let's see how we can use JSDoc in practice. ![Reality Check Meme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/polug716a3hs9lgwr8tf.gif) ## Using JSDoc in practice 🏄♂️ There are a few challenges when starting to use JSDoc in your project. So this section will focus on these challenges and how you can overcome them. ### How to get the most out of JSDoc In this post I'm going to stick with VSCode. If you're using another editor, you can still follow along, but you might have to look up how to configure things in your editor. VSCode has built-in support for JSDoc. This means that you can get a lot of the JSDoc benefits without having to install any additional extensions. But there are a few things that you can do to get even more out of JSDoc. Enabling the checkJs option in your `jsconfig.json` file will make the editor display errors for type mismatches, even in JavaScript files. Place it in the root of your project or in the folder where you want to enable type checking. This file can look like this: ```json { "compilerOptions": { "checkJs": true, } }
-
In my Eras era. 💅
Reddit uses Markdown, it's a pretty ubiquitous markup for formatting text online. You'll find it's used in a lot of places. https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
What are some alternatives?
ts-toolbelt - 👷 TypeScript's largest type utility library
notable - The Markdown-based note-taking app that doesn't suck.
runtypes - Runtime validation for static types
termux-widget - Termux add-on app which adds shortcuts to commands on the home screen.
tss-react - ✨ Dynamic CSS-in-TS solution, based on Emotion
simple-icons - SVG icons for popular brands
ts-essentials - All essential TypeScript types in one place 🤙
react-syntax-highlighter - syntax highlighting component for react with prismjs or highlightjs ast using inline styles
zod - TypeScript-first schema validation with static type inference
Hugo - The world’s fastest framework for building websites.
variant - Variant types in TypeScript
shields - Concise, consistent, and legible badges in SVG and raster format