Top Related Projects
A utility-first CSS framework for rapid UI development.
The instant on-demand atomic CSS engine.
Next generation utility-first CSS framework.
Chakra UI is a component system for building SaaS products with speed ⚡️
Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
Quick Overview
Page UI is a lightweight, customizable UI library for building web applications. It provides a set of reusable components and utilities that can be easily integrated into existing projects or used as a foundation for new ones. The library focuses on simplicity and performance, making it suitable for both small and large-scale applications.
Pros
- Lightweight and fast, with minimal overhead
- Highly customizable and extensible
- Easy to integrate with existing projects
- Good documentation and examples
Cons
- Limited set of components compared to larger UI libraries
- Less community support and ecosystem compared to more popular alternatives
- May require more custom styling and implementation for complex UI patterns
- Not as feature-rich as some other UI frameworks
Code Examples
- Creating a basic button component:
import { Button } from 'page-ui';
const MyButton = () => (
<Button onClick={() => console.log('Clicked!')}>
Click me
</Button>
);
- Using the Grid system for layout:
import { Grid, Row, Col } from 'page-ui';
const Layout = () => (
<Grid>
<Row>
<Col xs={12} md={6}>Left column</Col>
<Col xs={12} md={6}>Right column</Col>
</Row>
</Grid>
);
- Implementing a modal dialog:
import { Modal, Button } from 'page-ui';
const MyModal = ({ isOpen, onClose }) => (
<Modal isOpen={isOpen} onClose={onClose}>
<Modal.Header>Modal Title</Modal.Header>
<Modal.Body>
<p>This is the modal content.</p>
</Modal.Body>
<Modal.Footer>
<Button onClick={onClose}>Close</Button>
</Modal.Footer>
</Modal>
);
Getting Started
To start using Page UI in your project, follow these steps:
- Install the package:
npm install page-ui
- Import and use components in your React application:
import React from 'react';
import { Button, Card } from 'page-ui';
const App = () => (
<div>
<h1>Welcome to my app!</h1>
<Card>
<Card.Body>
<p>This is a card component from Page UI.</p>
<Button>Click me</Button>
</Card.Body>
</Card>
</div>
);
export default App;
- Customize the theme (optional):
import { ThemeProvider } from 'page-ui';
const theme = {
colors: {
primary: '#007bff',
secondary: '#6c757d',
},
// Add more theme customizations here
};
const App = () => (
<ThemeProvider theme={theme}>
{/* Your app components */}
</ThemeProvider>
);
Competitor Comparisons
A utility-first CSS framework for rapid UI development.
Pros of Tailwind CSS
- Larger community and ecosystem, with more resources and third-party tools
- More comprehensive utility-class system, covering a wider range of CSS properties
- Better documentation and official learning resources
Cons of Tailwind CSS
- Steeper learning curve due to the extensive utility-class system
- Potentially larger initial CSS file size before optimization
- More complex setup and configuration process
Code Comparison
Page UI:
.p-ui-button {
padding: 0.5rem 1rem;
border-radius: 0.25rem;
background-color: #3490dc;
color: #ffffff;
}
Tailwind CSS:
<button class="px-4 py-2 rounded bg-blue-500 text-white">
Button
</button>
Page UI offers a more traditional CSS approach with predefined classes, while Tailwind CSS uses utility classes for inline styling. Tailwind's approach provides more flexibility but can lead to longer class strings in HTML. Page UI's method results in cleaner HTML but less customization on a per-element basis.
Both libraries aim to simplify UI development, but they take different approaches. Page UI focuses on providing ready-to-use components with consistent styling, while Tailwind CSS offers a utility-first methodology for building custom designs quickly.
The instant on-demand atomic CSS engine.
Pros of UnoCSS
- Highly customizable and extensible atomic CSS engine
- Supports multiple preset configurations for various frameworks
- Offers a wide range of utility classes and features
Cons of UnoCSS
- Steeper learning curve for developers new to atomic CSS
- Requires additional setup and configuration
- May result in larger CSS file sizes for complex projects
Code Comparison
Page-UI:
<div class="flex items-center justify-between p-4 bg-white shadow-md">
<h1 class="text-xl font-bold">Page-UI Header</h1>
<button class="px-4 py-2 bg-blue-500 text-white rounded">Click me</button>
</div>
UnoCSS:
<div class="flex items-center justify-between p-4 bg-white shadow-md">
<h1 class="text-xl font-bold">UnoCSS Header</h1>
<button class="px-4 py-2 bg-blue-500 text-white rounded">Click me</button>
</div>
While the code examples appear similar, UnoCSS offers more flexibility in customizing utility classes and supports various frameworks. Page-UI, on the other hand, provides a more opinionated and ready-to-use set of components and styles, which may be easier for beginners to implement quickly.
Next generation utility-first CSS framework.
Pros of Windicss
- More comprehensive utility-first CSS framework with a larger set of pre-defined classes
- Faster compilation and smaller bundle size due to its on-demand engine
- Active development and larger community support
Cons of Windicss
- Steeper learning curve for developers new to utility-first CSS frameworks
- May require additional configuration for complex projects
- Less focused on specific UI components compared to Page-ui
Code Comparison
Page-ui:
<div class="page-ui-button">
<button>Click me</button>
</div>
Windicss:
<button class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">
Click me
</button>
Page-ui focuses on pre-built components with specific class names, while Windicss uses utility classes to style elements directly. Windicss offers more flexibility and customization options, but requires more classes to achieve the same result.
Both projects serve different purposes: Page-ui is a lightweight UI component library, while Windicss is a full-featured utility-first CSS framework. The choice between them depends on the project requirements and developer preferences.
Chakra UI is a component system for building SaaS products with speed ⚡️
Pros of Chakra UI
- More comprehensive component library with a wider range of pre-built UI elements
- Stronger community support and more frequent updates
- Better documentation and extensive examples
Cons of Chakra UI
- Larger bundle size, which may impact performance for smaller projects
- Steeper learning curve due to its extensive feature set
- Less flexibility for custom styling compared to Page UI's minimalist approach
Code Comparison
Page UI:
import { Button } from 'page-ui'
<Button variant="primary">Click me</Button>
Chakra UI:
import { Button } from '@chakra-ui/react'
<Button colorScheme="blue">Click me</Button>
Summary
Chakra UI offers a more robust and feature-rich UI library with extensive documentation and community support. It's ideal for larger projects requiring a wide range of components. Page UI, on the other hand, provides a lightweight and minimalist approach, making it suitable for smaller projects or those requiring more custom styling. The choice between the two depends on the specific needs of your project, considering factors such as bundle size, learning curve, and required customization.
Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
Pros of Material-UI
- Extensive component library with a wide range of pre-built UI elements
- Strong community support and regular updates
- Comprehensive documentation and examples
Cons of Material-UI
- Larger bundle size due to its extensive feature set
- Steeper learning curve for customization and theming
- More opinionated design system, which may limit flexibility
Code Comparison
Material-UI:
import { Button, TextField } from '@material-ui/core';
<Button variant="contained" color="primary">
Click me
</Button>
<TextField label="Enter text" variant="outlined" />
Page-UI:
import { Button, Input } from '@page-ui/react';
<Button variant="primary">Click me</Button>
<Input placeholder="Enter text" />
Summary
Material-UI offers a more comprehensive set of components and stronger community support, making it suitable for large-scale projects. However, it comes with a larger bundle size and a steeper learning curve. Page-UI, on the other hand, provides a simpler and more lightweight alternative, which may be preferable for smaller projects or those requiring more customization flexibility. The code comparison shows that both libraries offer similar basic components, but Material-UI provides more built-in variants and styling options out of the box.
Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
Pros of styled-components
- More mature and widely adopted project with a larger community
- Offers a more comprehensive styling solution with advanced features like theming and global styles
- Better TypeScript support and integration with popular IDEs
Cons of styled-components
- Larger bundle size and potential performance overhead
- Steeper learning curve for developers new to CSS-in-JS concepts
- May require additional setup and configuration in some projects
Code Comparison
styled-components:
const Button = styled.button`
background-color: ${props => props.primary ? 'blue' : 'white'};
color: ${props => props.primary ? 'white' : 'blue'};
padding: 10px 20px;
border: 2px solid blue;
`;
page-ui:
import { Button } from 'page-ui';
<Button
backgroundColor={primary ? 'blue' : 'white'}
color={primary ? 'white' : 'blue'}
padding="10px 20px"
border="2px solid blue"
/>
Summary
styled-components offers a more comprehensive and mature CSS-in-JS solution with advanced features, while page-ui provides a simpler, more lightweight approach to UI components. The choice between the two depends on project requirements, team expertise, and performance considerations.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
ð New! Get an entire website from a prompt. Including design! Try it out at pageai.pro ð
Page UI ð
Landing page components & templates that you can copy ð & paste ð
pageui.dev
A collection of free templates, components and examples to create beautiful, high-converting landing pages with React and Next.js. Open source & themeable with Tailwind CSS. Inspired by Shadcn UI.
Quick links:
Read more about Page UI.
â ï¸ Page UI currently works with Tailwind v3. We are working on adding support for v4.
ð¨ Templates
ð» Installation (Next.js)
1ï¸â£ Start by creating a new Next.js app. You can use the following command:
npx create-next-app@latest my-app --typescript --tailwind --eslint
2ï¸â£ Run the Page UI CLI
npx @page-ui/wizard@latest init
3ï¸â£ Add the required dependencies to your Next.js app:
npm install @tailwindcss/forms @tailwindcss/typography tailwindcss-animate class-variance-authority clsx tailwind-merge lucide-react @radix-ui/react-accordion
4ï¸â£ Add the below to your global.css
file.
Show code âï¸
@layer base {
:root {
--hard-shadow: 0px 29px 52px 0px rgba(0, 0, 0, 0.4),
22px 25px 16px 0px rgba(0, 0, 0, 0.2);
--hard-shadow-left: 0px 29px 52px 0px rgba(0, 0, 0, 0.4),
-22px 25px 16px 0px rgba(0, 0, 0, 0.2);
/* If you use Shadcn UI already, you should already have these variables defined */
--background: 0 0% 100%;
--foreground: 240 10% 3.9%;
--card: 0 0% 100%;
--card-foreground: 240 10% 3.9%;
--popover: 0 0% 100%;
--popover-foreground: 240 10% 3.9%;
--primary-foreground: 355.7 100% 97.3%;
--secondary: 240 4.8% 95.9%;
--secondary-foreground: 240 5.9% 10%;
--muted: 240 4.8% 95.9%;
--muted-foreground: 240 3.8% 46.1%;
--accent: 240 4.8% 95.9%;
--accent-foreground: 240 5.9% 10%;
--destructive: 0 84.2% 60.2%;
--destructive-foreground: 0 0% 98%;
--border: 240 5.9% 90%;
--input: 240 5.9% 90%;
--radius: 0.5rem;
}
.dark {
/* If you use Shadcn UI already, you can skip this block. */
--background: 20 14.3% 4.1%;
--foreground: 0 0% 95%;
--card: 24 9.8% 10%;
--card-foreground: 0 0% 95%;
--popover: 0 0% 9%;
--popover-foreground: 0 0% 95%;
--primary-foreground: 144.9 80.4% 10%;
--secondary: 240 3.7% 15.9%;
--secondary-foreground: 0 0% 98%;
--muted: 0 0% 15%;
--muted-foreground: 240 5% 64.9%;
--accent: 12 6.5% 15.1%;
--accent-foreground: 0 0% 98%;
--destructive: 0 62.8% 30.6%;
--destructive-foreground: 0 85.7% 97.3%;
--border: 240 3.7% 15.9%;
--input: 240 3.7% 15.9%;
}
*,
::before,
::after {
@apply border-gray-100 dark:border-neutral-800;
}
* {
@apply font-sans;
}
h1,
h2,
h3,
h4,
h5,
h6 {
@apply font-semibold font-display;
}
}
@layer utilities {
.text-balance {
text-wrap: balance;
}
/**
* Perspective (used for images etc.)
*/
.perspective-none {
transform: none;
}
.perspective-left {
box-shadow: var(--hard-shadow);
transform: perspective(400em) rotateY(-15deg) rotateX(6deg)
skew(-8deg, 4deg) translate3d(-4%, -2%, 0) scale(0.8);
}
.perspective-right {
box-shadow: var(--hard-shadow-left);
transform: perspective(400em) rotateY(15deg) rotateX(6deg) skew(8deg, -4deg)
translate3d(4%, -2%, 0) scale(0.8);
}
.perspective-bottom {
box-shadow: var(--hard-shadow);
transform: translateY(-4%) perspective(400em) rotateX(18deg) scale(0.9);
}
.perspective-bottom-lg {
box-shadow: var(--hard-shadow);
transform: perspective(400em) translate3d(0, -6%, 0) rotateX(34deg)
scale(0.8);
}
.perspective-paper {
box-shadow: var(--hard-shadow);
transform: rotateX(40deg) rotate(40deg) scale(0.8);
}
.perspective-paper-left {
box-shadow: var(--hard-shadow-left);
transform: rotateX(40deg) rotate(-40deg) scale(0.8);
}
/**
* Custom shadows
*/
.hard-shadow {
box-shadow: var(--hard-shadow);
}
.hard-shadow-left {
box-shadow: var(--hard-shadow-left);
}
/**
* Container utilities
*/
.container-narrow {
@apply max-w-4xl;
}
.container-wide {
@apply xl:max-w-6xl;
}
.container-ultrawide {
@apply xl:max-w-7xl;
}
}
For other frameworks, check out the installation guide.
⨠Skip the setup by bootstrapping your app with Shipixen.
ð¨ Templates
To copy and paste from the available templates, visit landing page templates.
ð¿ Demos
To see the components in action, visit landing page component examples.
ðª Motivation
Designing and building landing pages that look good and convert well is hard business.
Most UI libraries focus on application UI, so when you set up a starer or boilerplate you end up staring at a blank canvas.
The time spent browsing through bloated templates, figuring out how to port them to your app and then customizing them is time you could spend on your product.
Start from a blank canvas to create, start from Page UI to innovate.
ð License
Licensed under the MIT license
Save 100s of hours of work by using Page AI to generate a beautiful website. In just minutes!
![]() Page AI AI Website Generator that designs and writes clean code. Try the app on pageai.pro. | ![]() |
Apihustle is a collection of tools to test, improve and get to know your API inside and out.
apihustle.com
Page AI | AI Website Generator that designs and writes clean code. | pageai.pro | |
Shipixen | Create a personalized blog & landing page in minutes | shipixen.com | |
Page UI | Landing page UI components for React & Next.js | pageui.dev | |
Clobbr | Load test your API endpoints. | clobbr.app | |
Crontap | Schedule API calls using cron syntax. | crontap.com | |
CronTool | Debug multiple cron expressions on a calendar. | tool.crontap.com |
Page UI â¤ï¸ Open Source
Top Related Projects
A utility-first CSS framework for rapid UI development.
The instant on-demand atomic CSS engine.
Next generation utility-first CSS framework.
Chakra UI is a component system for building SaaS products with speed ⚡️
Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot