Thanks to visit codestin.com
Credit goes to github.com

Skip to content

marcusrbrown/sparkle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ Sparkle

TypeScript React React Native License: MIT

A modern TypeScript playground and monorepo showcasing cutting-edge web and mobile development technologies. Built with React, React Native, and a comprehensive suite of tools for building production-ready applications.

Note

This is an experimental playground project focused on exploring modern development patterns, monorepo architecture, and cross-platform solutions.

Features

  • 🎨 Design System: Comprehensive theme management with design tokens, light/dark modes, and cross-platform support
  • 🧩 Component Library: Modern, accessible React components built with Radix UI primitives and Tailwind CSS
  • 📱 Mobile App: Expo/React Native application demonstrating cross-platform development
  • 📚 Documentation: Interactive Storybook environment for component development and testing
  • 🔧 Developer Experience: TypeScript-first development with comprehensive tooling and testing
  • ⚡ Modern Tooling: Turborepo, pnpm workspaces, Vite, and automated workflows

Quick Start

Prerequisites

Installation

# Clone the repository
git clone https://github.com/marcusrbrown/sparkle.git
cd sparkle

# Install dependencies
pnpm bootstrap

# Start the development environment
pnpm dev

This will start:

  • Storybook at http://localhost:6006
  • Mobile app with Expo (follow CLI instructions)
  • Component library in watch mode

Packages

Core Libraries

Package Description Status
@sparkle/ui Modern, accessible React component library ✅ Active
@sparkle/theme Cross-platform theme management with design tokens ✅ Active
@sparkle/types Shared TypeScript type definitions ✅ Active
@sparkle/utils Utility functions and React hooks ✅ Active

Applications

Package Description Status
packages/storybook Component documentation and development environment ✅ Active
apps/fro-jive Expo/React Native mobile application ✅ Active

Development Tools

Package Description Status
@sparkle/config Shared build and linting configurations ✅ Active
@sparkle/error-testing Error handling utilities and testing tools ✅ Active

Development

Common Commands

# Install dependencies
pnpm bootstrap

# Start development servers
pnpm dev

# Build all packages
pnpm build

# Run tests
pnpm test

# Type checking
pnpm check:types

# Linting and formatting
pnpm lint
pnpm check

# Clean build artifacts
pnpm clean

Package Management

This monorepo uses pnpm workspaces and Turborepo for efficient package management and build orchestration:

# Add dependency to specific package
pnpm add --filter @sparkle/ui react

# Run command in specific package
pnpm --filter @sparkle/ui build

# Run command in all packages
pnpm -r build

Creating Components

// packages/ui/src/components/NewComponent/NewComponent.tsx
import {forwardRef} from 'react'

export interface NewComponentProps {
  children: React.ReactNode
  variant?: 'default' | 'accent'
}

export const NewComponent = forwardRef<HTMLDivElement, NewComponentProps>(
  ({children, variant = 'default', ...props}, ref) => {
    return (
      <div ref={ref} className={`new-component new-component--${variant}`} {...props}>
        {children}
      </div>
    )
  }
)

NewComponent.displayName = 'NewComponent'

Technology Stack

Core Technologies

  • TypeScript - Type-safe JavaScript
  • React - UI library for web applications
  • React Native - Cross-platform mobile development
  • Expo - Mobile app development platform

Build Tools

  • Turborepo - High-performance build system
  • pnpm - Fast, disk space efficient package manager
  • Vite - Lightning-fast build tool
  • tsdown - TypeScript bundler

UI & Styling

Testing & Quality

Architecture

sparkle/
├── packages/
│   ├── ui/              # React component library
│   ├── theme/           # Cross-platform theme system
│   ├── types/           # Shared TypeScript definitions
│   ├── utils/           # Utility functions and hooks
│   ├── config/          # Build and lint configurations
│   ├── storybook/       # Component documentation
│   ├── fro-jive/        # Mobile application
│   └── error-testing/   # Error handling utilities
├── docs/                # Project documentation
├── scripts/             # Build and maintenance scripts
└── ...config files

Resources

About

✨ TypeScript Playground ✨

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages