Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/blinkk/amagaki

A high-performance TypeScript static website generator for building highly-interactive websites. Localization inbuilt. Flexible URLs. Content managed and templates separated.
https://github.com/blinkk/amagaki

amagaki localization static-site-generator typescript

Last synced: 2 months ago
JSON representation

A high-performance TypeScript static website generator for building highly-interactive websites. Localization inbuilt. Flexible URLs. Content managed and templates separated.

Awesome Lists containing this project

README

        

# Amagaki

[![NPM Version][npm-image]][npm-url]
[![GitHub Actions][github-image]][github-url]
[![codecov][codecov-image]][codecov-url]
[![TypeScript Style Guide][gts-image]][gts-url]

Amagaki is a marketing website generator. It's written in TypeScript and TS is a
first-class citizen. It's specifically built for hand-coding marketing and
informational websites. Flexible URLs, benchmarking, localization, a plugin
system, and multiple template engines are all built-in.

Amagaki takes concepts from [Grow.dev](https://github.com/grow/grow) and evolves
them to a TypeScript-first ecosystem.

## [🍊 Start here with the documentation](https://amagaki.dev)

## Key concepts

- TypeScript and Node
- Minimal core dependencies
- Inbuilt build metrics (memory usage, generated file size, routes, locales,
translations)
- Multiple template languages (Nunjucks as default)
- A static site generator (not a frontend framework)
- Renders pages at request time (unlike other static generators which watch and rebuild)
- Localization is an inbuilt feature
- Custom YAML types for extending the content layer
- Plugin system
- Benchmarking inbuilt

## Try it out

Amagaki is distributed as an npm package. When starting a new site from scratch,
we recommend using `create-amagaki` which uses the official
[`amagaki-starter`](https://github.com/blinkk/amagaki-starter).

```shell
# Create a new Amagaki project interactively
npx create-amagaki

# Start the dev server
npm run dev

# Build the site
npm run build
```

If you are integrating into an existing project, you can install Amagaki directly.

```shell
# Install Amagaki
npm install --save @amagaki/amagaki
```
## Benchmarks

You can view the [benchmark
history](https://blinkk.github.io/amagaki/benchmark/) that shows the benchmark
metrics when running `amagaki build` against the
[amagaki-benchmark](https://github.com/blinkk/amagaki-benchmark) test
repository.

[github-image]: https://github.com/blinkk/amagaki/workflows/Run%20tests/badge.svg
[github-url]: https://github.com/blinkk/amagaki/actions
[codecov-image]: https://codecov.io/gh/blinkk/amagaki/branch/main/graph/badge.svg
[codecov-url]: https://codecov.io/gh/blinkk/amagaki
[gts-image]: https://img.shields.io/badge/code%20style-google-blueviolet.svg
[gts-url]: https://github.com/google/gts
[npm-image]: https://img.shields.io/npm/v/@amagaki/amagaki.svg
[npm-url]: https://npmjs.org/package/@amagaki/amagaki