Pagic

screenshot of Pagic

A static site generator powered by Deno + React

Overview

Pagic is a static site generator that is easy to configure and follows a convention-over-configuration approach. It allows you to create static HTML pages from Markdown (md) and TypeScript (tsx) files, supporting React Hooks and pre-rendering to static HTML. With Pagic, you can build your own website using official themes and plugins, or import third-party ones. It also offers various demos and templates to help you get started quickly.

Features

  • Easy to configure: Pagic uses a single config file (pagic.config.ts) to configure your static website.
  • Convention over configuration: It follows a convention-based approach, reducing the need for complex configurations.
  • Intuitive design: Pagic provides an intuitive design that makes it easy to navigate and use.
  • Support for md and tsx: You can use both Markdown and TypeScript files to create your pages.
  • Render md/tsx to static HTML: Pagic converts your Markdown and TypeScript files into static HTML pages.
  • Support for React Hooks: Pagic allows you to use React Hooks in your pages.
  • Pre-render to static HTML, run as an SPA once loaded: Your website can be pre-rendered to static HTML and then run as a single-page application (SPA) once loaded.
  • Themes and plugins: Pagic offers official themes, including default, docs, and blog with dark mode. You can also combine plugins to enhance your build process.
  • Import third-party themes or plugins through URL: You can import and use third-party themes or plugins by specifying their URLs.
  • Demos: Pagic provides various demo websites and templates to help you learn and get started quickly.
eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.