esprima
SvelteKit
esprima | SvelteKit | |
---|---|---|
8 | 611 | |
6,962 | 17,733 | |
0.0% | 1.3% | |
0.0 | 9.8 | |
about 1 year ago | 2 days ago | |
TypeScript | JavaScript | |
BSD 2-clause "Simplified" License | 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.
esprima
-
ESLint: under the hood
Focusing again on ESLint, the parser used by the linter is called Espree. This is an in-house parser built by the ESLint folks to fully support ECMAScript 6 and JSX on top of the already existing Esprima. The Espree module provide APIs for both tokenization and parsing that you can easily test out.
-
Why you don’t need TypeScript
For TypeScript we have used AST transforms from their compiler API, and for plain JavaScript we did a similar thing using ESPrima. This helped us implement some simple optimizations like stream fusion (combining .filter and .map into a single operation) or avoiding extra object allocations in vector math, which led to nice performance improvements in code that does heavy computation (we process large amounts of data on the server and store results of physics simulations).
-
Algorithm to simplify a 100-variable Boolean expression?
I used ESPrima, but any parser would do in this case. I then wrote a simple function to extract all "atomic" non-boolean expressions from it.
-
How to make your own programming language in JavaScript
AST is an acronym for Abstract Syntax Tree. It's the way to represent code in a format that tools can understand. Usually in form of tree data structure. We will use AST in the format of an Esprima, which is a JavaScript parser that outputs AST.
-
What the heck is an Abstract Syntax Tree (AST) ?
esprima
-
Abstract Syntax Trees: They're Actually Used Everywhere -- But What Are They?
Create an AST: Esprima
-
We Switched from Webpack to Vite
The thread was originally about CRA vs Vite size on disk (or implicitly, if we're applying it to real world applications, network cost in CI job startup times). And like I said, surrogate pairs don't apply to ASCII.
See this[0] for reference. Note how the first byte must fall within a certain range in order to signal being a surrogate pair. This fact is taken advantage of by JS parsers to make parsing of ASCII code faster by special casing that range, since checking for a valid character in the entire unicode range is quite a bit more expensive[1].
[0] https://github.com/jquery/esprima/blob/0911ad869928fd218371b...
[1] https://github.com/jquery/esprima/blob/0911ad869928fd218371b...
-
How to create your own language that compile to JavaScript
If you want to learn more about parsing, reading the code of an actual recursive parser might be a better idea. Esprima is a decent place to start if you're interested in JS grammar. Then you can look at the babel handbook to learn more about AST transformations. From there, the literature gets quite a bit more heavy. If you get this far and are willing to push further, you'll probably want to grab yourself a copy of the dragon book at a minimum.
SvelteKit
-
ChatCrafters - Chat with AI powered personas
Svelte Kit for the fullstack framework It has first class support for Cloudflare Pages Svelte is a very elegant framework, and Svelte Kit is a very good meta-framework for Svelte. Svelte was probably the reason that…
-
Fun, Beautiful, Printable 'Story Cards' for Kids with Cloudflare AI
This AI-powered Story Card Maker is built as a SvelteKit application with Typescript. Using Flowbite Svelte component library, the whole application was laid out. The layout for the Story Card (emulating the size of a postcard - 4" x 3") is created as an HTML Canvas using Fabric.js.
-
Image Generator with Cloudflare
Svelte kit
- Cannot CRUD cookies in SvelteKit from another port
-
The State of Angular SSR Deployment in 2024
These adapters, for example, were built by the community: https://github.com/sveltejs/kit/tree/master/packages/adapter-vercel https://github.com/nuxt/vercel-builder If somebody builds a working one for Angular Universal, we will gladly add it to our Framework Presets → https://vercel.com/docs/concepts/deployments/build-step#framework-preset.
-
AI for Web Devs: Deploying Your AI App to Production
UPDATE: If you liked this project and are curious to see what it might look like as a SvelteKit app, check out this blog post by Tim Smith where he converts this existing app over.
-
Ask HN: Looking for lightweight personal blogging platform
I've played around with several platforms in the last year or so. I've landed on the following setup that works very well for me and ticks all your boxes:
A SvelteKit[0] app hosted on Cloudflare pages. The repo is hosted on GitHub and hooked up to the Cloudflare Pages app [1]. On PRs, I get preview environments. On merge, the changes get deployed to my "production" website. I write blog posts and other content in markdown, which is then processed by mdsvex[2] with very minimal setup.
Mostly, my requirements were more focused around getting the actual framework, hosting, etc. out of my way so that I could focus on writing. Gatsby and Next.js were too configuration heavy and turned me off once I scratched beyond the surface.
[0] https://kit.svelte.dev/
-
Mini site for recommending songs using Svelte & Deno
Behind the scenes is a simple Sveltekit-powered server function to fetch a Spotify client token then find a user's recommendation playlist and its track information. A Deno edge function to performs this data fetch and renders server-side Svelte.
-
Removing React is just weakness leaving your codebase
It’s 2024, and you are about to start a new project. Do you reach for React, a framework you know and love or do you look at one of the other hot new frameworks like Astro, Enhance, 11ty, SvelteKit or gasp, plain vanilla Web Components?
-
CryptoFlow: Building a secure and scalable system with Axum and SvelteKit - Part 5
From part 0 to part 4, we built out CryptoFlow's backend service. Though we can quickly use Postman, VS Code's ThunderClient or automated tests to see the endpoints working easily, this isn't all we want. We want to actively interact with the backend service via some intuitive user interface. Also, a layman wouldn't be able to "consume" the service we've built in the last parts. This article introduces building out the user interface of the system. We will be using SvelteKit, a framework that streamlines web development, and TailwindCSS, the utility-first CSS framework. Let's dig in!
What are some alternatives?
estree - The ESTree Spec
Next.js - The React Framework
babel-handbook - :blue_book: A guided handbook on how to use Babel and how to create plugins for Babel.
Nuxt.js - Nuxt is an intuitive and extendable way to create type-safe, performant and production-grade full-stack web apps and websites with Vue 3. [Moved to: https://github.com/nuxt/nuxt]
estraverse - ECMAScript JS AST traversal functions
Express - Fast, unopinionated, minimalist web framework for node.
esbuild-loader - Webpack loader for esbuild: Speed up your build ⚡️
astro - The web framework for content-driven websites. ⭐️ Star to support our work!
escodegen - ECMAScript code generator
vite - Next generation frontend tooling. It's fast!
vite-plugin-vue2 - Vue2 plugin for Vite
Svelte - Cybernetically enhanced web apps