Giter Club home page Giter Club logo

rakkasjs's Introduction

Rakkas

Lightning fast Next.js alternative powered by Vite

Build Status npm type definitions MIT license React Vite Tweet about Rakkas

Read the guide | Try it in the browser


What is Rakkas?

Rakkas is a web framework powered by React and Vite that aims to have a developer experience similar to Next.js. Many of its features are also inspired by Svelte Kit. Important features are:

  •   Lightning fast development
  • 🖥️  Hassle free server-side rendering
  • 🚀  Support for deploying on serverless environments
  • 📄  Static site generation
  • 🇺🇳  Localizable URLs
  • 🔀  Rendering modes (pre-rendering, server-side, client-side)
  • ☸️  SPA-style client-side navigation
  • 📁  Intuitive file system-based routing
  • ⬇️  Simple but effective data fetching system
  • ⚙️  API routes to build and organize your backend

See the feature comparison with Next.js for other supported and planned features.

Is Rakkas right for you?

  • Although many features have been implemented, Rakkas is still in development. There will be breaking changes until we hit 1.0. As such, it's not yet ready for production use. If you need a stable React framework try Next.js or Gatsby.
  • Rakkas doesn't aim compatibility with Next.js. Check out Vitext if you want to port a Next.js application to Vite.
  • Rakkas is somewhat opinionated. If you need more flexibility try vite-ssr-plugin.

Getting started

🚀 You can now try Rakkas online, right in your browser!

The easiest way to try Rakkas out on your computer is to use the project initializer:

# Create the project directory
mkdir my-app && cd my-app
# Scaffold the demo app: Follow the prompts for the rest
npx create-rakkas-app@latest

create-rakkas-app project initializer comes with many features, all off which are optional but we strongly recommend enabling TypeScript and the generation of a demo project on your first try because self-documenting type definitions allow for a smoother learning curve and the demo project source code comes with plenty of comments. You may not need this guide!

👷 If you prefer a manual setup, you can install rakkasjs, react, react-dom, and react-helmet-async as production dependencies, and @rakkasjs/cli as a dev dependency:

npm install --save rakkasjs react react-dom react-helmet-async
npm install --save-dev @rakkasjs/cli

Then you can start a development server on localhost:3000 with npx rakkas dev, build with npx rakkas build, and launch with node dist/server.

Credits

Version history

0.5.0

  • Serverless support (Vercel, Netlify, Cloudflare Workers)
  • Improved client-side navigation
  • Improved SSR
  • Partial pre-rendering
  • Client-only pages
  • Localizable URLs
  • Cache-control header setting

0.4.0

  • Static site generation
  • Switch to React automatic JSX runtime
  • Integration examples (Apollo GraphQL, Styled Components, MDX, Tailwind CSS)
  • More options in the project generator
  • Lots of minor features and fixes
  • Much-expanded documentation

rakkasjs's People

Contributors

astahmer avatar cyco130 avatar tkamenoko avatar

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.