A progressive static-site generator for React.
React-Static is a fast, lightweight, and powerful framework for building static-progressive React applications and websites. It's been carefully designed to meet the highest standards of SEO, site performance, and user/developer experience.
- ⚛️ 100% React (or Preact!)
- 🚀 Blazing fast builds and performance.
- 🚚 Data Agnostic. Supply your site with data from anywhere, however you want.
- ✂️ Automatic code and data splitting for routes!
- 💥 Instant page views via PRPL pattern.
- 🎯 Built for SEO.
- 🥇 React-first developer experience.
- 😌 Painless project setup & migration.
- 💯 Supports 100% of the React ecosystem. Including CSS-in-JS libraries, custom Query layers like GraphQL, and even Redux.
- 🔥 Hot Reloadable out-of-the-box. Edit React components & styles in real-time.
- 📲 LAN accessible dev environment for testing on other devices like phones and tablets.
Videos & Tutorials
- Quick Start with Styled Components (20 min)
- Introducing React-Static! How it works and why we built it! (80 min)
- Using React-Static to replace create-react-app (5 min)
Sites Built with React-Static
- React-Static.js.org (source)
- React-Charts.js.org (source)
- Nozzle.io (source)
- HeadlessCMS.org (source)
- Manta.life (source)
- Manticore Games
- David York - Personal Blog
- Cryptagon - Crypto Portfolio Tracker
- Typetalk - Chat App for Businesses and Teams
- Lam Hieu - Personal Website
- Elsa Salonen - Artist Portfolio
- PSD Wizard: On-demand Front-End Coding Service
- NYC Vintage Map
- Eldar Labs - Utilities and Productivity Tools
- Dan Webb - Personal Website (source)
- Intuit Turbo
- Messenger Corp. client asset ordering
- Digital Neighborhood watch service
- Carmen Marcos Art - Artist Portfolio (source)
- BlockAce - Blockchain Jobs Board
- Luke Haas - Personal Website
- KleineKoning.nl - Webshop
- Install the CLI:
$ yarn global add react-static# or$ npm install -g react-static
- Create a new project:
$ react-static create
- Pick a template! See the full list of templates
- Navigate to your new project:
$ cd my-static-site
- Start the dev server and edit some code!
$ yarn start # or react-static start
- Test a production build
$ yarn stage # or react-static build --staging$ yarn serve
- Build for production!
$ yarn build # or react-static build
Once you've installed and test driven sufficiently, you may want to:
Examples and Templates
All of the following examples can be used as a template at project creation.
- Blank (Create-React-App)
- Animated Routes
- Custom Routing
- Dynamic Imports (code-splitting)
- Firebase Auth
- Glamorous & Tailwind CSS
- LESS & Antdesign
- Apollo GraphQL
- Apollo & Redux
- Cordova (Hybrid App)
- Basic Prismic (Headless CMS)
- Tailwind CSS
- Netlify CMS
- Gentics Mesh CMS
Can't find an example? We invite you to write one! Simply copy the
blank templates and make the necessary changes. Then submit a PR including your new example directory and a new item in the list above. When merged, your example will automatically become a template in the CLI. How magical!
Chat with us on the React Static Spectrum community!
Need some help? Have a quick question? Click here to sign up for the React-Tools spectrum community! We are constantly answering questions, discussing features and helping each other out!
We are always looking for people to help us grow
react-static's capabilities and examples. If you have an issue, feature request, or pull request, let us know!
React Static uses the MIT license. For more information on this license, click here.