Code Monkey home page Code Monkey logo

prev-archived's Introduction

prev

Preact v

Features

  • Plugins
    • Twind - Tailwind Support with SSR
    • Hoofd - Hooks for SEO
    • Bring your own!
  • File Based API/Page Router backed by Hono
  • Islands for interactivity
  • Live Tree Swapping - Similar to HMR(Hot Module Reload), in Dev
  • Hackable - This repo is the source code.

Usage

  • Clone this repo
  • Delete the .git repo and make it your own
rm -rf .git
git init
  • Install dependencies.
yarn
  • And you're done.

The What

It stands somewhere in-between a framework and a boilerplate. Everything you think prev is, is a part of the repo at all times.

Pros

  • No lockin
  • Easy to hack into the codebase and make mods or even change entire functionalities.

Cons

  • Updates are hard (I'm looking for ways to handle this)
  • becomes very documentation dependent instead of having a self-explanatory API

Since the cons are something that can be solved by adding prev to a package, I will also be doing that but to start with, it's a clonable template repo to work with.

The Why

It started as a demo to help fresh to move from their multi layer approach mentioned here https://deno.com/blog/intro-to-islands to being able to convert any file into an island using barelyhuman/preact-island-plugins. Considering fresh has moved quite ahead and the change might not be in the best of their interest.

So then, I just continued adding features into it one by one and now we have something tiny that I would say can be a minimal MPA/Islands framework.

Documentation

TODO

License

MIT

prev-archived's People

Contributors

barelyhuman avatar shofiya2003 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

prev-archived's Issues

DX: PNPM installs required `-w` since root app

Both could be inside packages but that is also not good DX, it'll be easier to work with lerna since the package manager can be changed and the linking would be automatic.

Look for better solutions or go ahead with lerna/nx

Also creates an issue with auto installs in libraries like prisma

Segregate the CLI, Router, Kernel Logic

  • Move the compilation logic out of the CLI (Already done in https://github.com/barelyhuman/dveep/blob/main/packages/dveep/src/lib/builder.js). Uses rollup instead of esbuild so needs the required modifications for the same

  • Move the routing logic out of the kernel and the cli and instead it's own tiny module.

    • Scan the directory and generate module imports for every route and file
    • Construct the routes using a manifest or define a routing config
    • Explain the behavior for the routes.js file and the pagination based route in docs

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.