Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@stack54/cli

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stack54/cli

stack54 cli

latest
Source
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

MPA

🚧 [WIP]

✨ Features

  • Hot reload
  • HTML asset bundling
  • Typed environment variables
  • Templates with Svelte and Markdown

Configuration

import { defineConfig } from "vite";
import mpa from "stack54/vite";

export default defineConfig({
  plugins: [
    mpa({
      /* ...config */
    }),
  ],
});

API

  • publicEnvPrefix: default PUBLIC\_
  • extensions: default .svelte, .svx
  • serverEntry: default src/entry.{js,ts,mjs,mts}
  • preprocess: documentation
  • compilerOptions: documentation

Routing

import { Hono } from "hono";

const router = new Hono();

router.get("/", (ctx) => ctx.html(view("about")));

Nested router

import { Hono } from "hono";

const router = new Hono();

// nested
const nested = new Hono();
nested.get("/", (ctx) => ctx.html(view("about")));
// nested

router.route("*", nested);

Rendering

To render a component/template, include ssr query in file import i.e

import { renderToString } from "stack54/render";
import About from "./views/about.svelte?ssr";

renderToString(
  About.render({
    /* props */
  })
);

// or

renderToString(About, {
  /* props */
});

Or

import { makeFactory, resolveComponent } from "stack54/render";

const templates = import.meta.glob("./views/**/*.page.svelte", {
  query: { ssr: true },
  eager: true,
});

export const view = makeFactory((name) => {
  return resolveComponent(`./views/${name}.svelte`, templates);
});

view("about", {
  /* props */
});

Limitations

  • Cannot use dynamic import types in templates i.e
export let prop: import("some-module").Type;

FAQs

Package last updated on 29 Mar 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts