Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ultirequiem/eloquent-javascript
🐔 Solved with TypeScript and TDD
https://github.com/ultirequiem/eloquent-javascript
deno eloquent-javascript eloquent-typescript javascript tdd testing typescript
Last synced: about 2 months ago
JSON representation
🐔 Solved with TypeScript and TDD
- Host: GitHub
- URL: https://github.com/ultirequiem/eloquent-javascript
- Owner: UltiRequiem
- License: mit
- Created: 2022-04-17T02:56:01.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-01T00:04:38.000Z (8 months ago)
- Last Synced: 2024-10-24T11:47:00.455Z (2 months ago)
- Topics: deno, eloquent-javascript, eloquent-typescript, javascript, tdd, testing, typescript
- Language: TypeScript
- Homepage: https://ulti.js.org/eloquent-javascript
- Size: 60.5 KB
- Stars: 7
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
# Eloquent JavaScript
[![Code Coverage](https://codecov.io/gh/ultirequiem/eloquent-javascript/branch/main/graph/badge.svg)](https://codecov.io/gh/ultirequiem/eloquent-javascript)
[![Deno Doc](https://doc.deno.land/badge.svg)](https://doc.deno.land/https/deno.land/x/eloquent/mod.ts)**[Read the book for free!](https://eloquentjavascript.net) 📖**
I solved the exercises using [TypeScript](https://typescriptlang.org) and
[Test Driven Development](https://github.com/dwyl/learn-tdd).### Language
#### [Program Structure](https://eloquentjavascript.net/02_program_structure.html)
- [Looping a Triangle](https://eloquentjavascript.net/02_program_structure.html#i_umoXp9u0e7) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/triangle.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/triangle.test.ts)- [FizzBuzz](https://eloquentjavascript.net/02_program_structure.html#i_rebKE3gdjV) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/fizzbuzz.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/fizzbuzz.test.ts)- [Chessboard](https://eloquentjavascript.net/02_program_structure.html#i_swb9JBtSQQ) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/chessboard.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/chessboard.test.ts)#### [Functions](https://eloquentjavascript.net/03_functions.html)
- [Minimum](https://eloquentjavascript.net/03_functions.html#i_XTmO7z7MPq) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/minimum.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/minimum.test.ts)- [Recursion](https://eloquentjavascript.net/03_functions.html#i_jxl1p970Fy) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/is_even.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/is_even.test.ts)- [Bean Counting](https://eloquentjavascript.net/03_functions.html#i_3rsiDgC2do) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/bean_counting.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/bean_counting.test.ts)#### [Data Structures](https://eloquentjavascript.net/04_data.html)
- [Range](https://eloquentjavascript.net/04_data.html#i_8ZspxiCEC) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/range.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/range.test.ts)- [Reversing an Array](https://eloquentjavascript.net/04_data.html#i_6xTmjj4Rf5) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/reversing_array.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/reversing_array.test.ts)- [List](https://eloquentjavascript.net/04_data.html#i_nSTX34CM1M) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/list.test.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/list.test.ts)- [Deep Equal](https://eloquentjavascript.net/04_data.html#i_IJBU+aXOIC) -
[Solution](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/deep_equal.ts) -
[Test](https://github.com/UltiRequiem/eloquent-javascript/blob/main/src/language/deep_equal.test.ts)## Usage
The vast majority of solutions are completely reusable functions, so I decided
to package them.The API is the same on all this platforms ✔️
### [Deno 🦕](https://deno.land/x/eloq)
```javascript
import * as eloq from "https://deno.land/x/eloq/mod.ts";
```### [Node.js 🐢🚀](https://npmjs.com/package/eloq)
```javascript
import * as eloq from "eloq";
```### [Browser 🌐](https://developer.mozilla.org/en-US/docs/Glossary/Browser)
You can use any [CDN](https://en.wikipedia.org/wiki/Content_delivery_network) 🔥
Eg 👉
[ESM](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) ↔️
[SkyPack](https://cdn.skypack.dev/eloq) 🆚
[Script Tag](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script)
↔️ [JSDelivr](https://cdn.jsdelivr.net/npm/eloq)## Documentation
Is hosted on [Deno Doc](https://doc.deno.land/https://deno.land/x/eloq/mod.ts) 📄
## Support
Open an Issue, I will check it a soon as possible 👀
If you want to hurry me up a bit
[send me a tweet](https://twitter.com/UltiRequiem) 😆Consider [supporting me on Patreon](https://patreon.com/UltiRequiem) if you like
my work 🙏Don't forget to start the repo ⭐
## Versioning
We use [Semantic Versioning](http://semver.org). For the versions available, see
the [tags](https://github.com/UltiRequiem/eloquent-javascript/tags) 🏷️## Authors
[Eliaz Bobadilla](https://ultirequiem.com) - Creator and Maintainer 💪
See also the full list of
[contributors](https://github.com/UltiRequiem/eloquent-javascript/contributors)
who participated in this project ✨## Licence
Licensed under the MIT License 📄