pineapple-library

CSS and Javascript web development library that supplements Bootstrap.


Keywords
pineapple, bootstrap, css, js, html, framework, template, library, development, javascript, sass, scss, web, web-development
License
MIT
Install
npm install pineapple-library@3.2.3

Documentation

Pineapple

CSS and Javascript web development library that supplements Bootstrap.

Build Status NPM Licence

Showcase

Pineapple came about as a way to help me quickly build "brochure-style" websites some years ago. I found I was copying and pasting a lot of custom CSS around my projects to extend Bootstrap's library and decided to build my own. Over the years as Bootstrap evolved, certain Pineapple functions were removed in favor of the better battle-tested Bootstrap equivalent. Pineapple still serves as a nice addition to any Bootstrap project.

Notable Features:

  • Full-screen banners, YouTube videos, and Bootstrap carousels with incredible customization for overlaid text, images, and buttons
  • Beautiful sliding animations (full page and individual components)
  • Page loader animation
  • Countdown timer with custom messaging
  • Fading and appearing navbar
  • Icons, cards, and slanted background sections
  • Dynamic screen-sized fonts, buttons, and more

Install

Pineapple has been compiled into CSS from SCSS and JS. You will find either the beautified or minified equivelant of each along with source maps.

CDN

<link
  href="https://cdn.jsdelivr.net/npm/pineapple-library@3.2.1/pineapple/dist/css/pineapple.min.css"
  rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/pineapple-library@3.2.1/pineapple/dist/js/pineapple.min.js"></script>

NPM

npm install pineapple-library

Composer

composer require justintime50/pineapple

Webpack & Vite

NOTE: Requires Pineapple v2.2+

Once installed via NPM, include one of the following in your Webpack or Vite configs and compile your project:

// Require
window.pineapple = require('pineapple-library/pineapple/dist/js/pineapple');

// Import
import pineapple from 'pineapple-library/pineapple/dist/js/pineapple';
window.pinapple = pinealle;

SCSS

To import the project's SCSS, use the following line in your project:

@import 'pineapple-library/pineapple/scss/pineapple';

Manual Download

  1. Clone the repo
  2. Manually import the Pineapple assets to your project
git clone https://github.com/justintime50/pineapple.git

The Pineapple CSS has been compiled into three separate bundles:

  • pineapple includes everything
  • pineapple-styles includes everything but the grid and animations CSS and can be used without the accompanying JS
  • pineapple-utilities includes the grid and animations CSS which accompanies the JS

Pineapple, Bootstrap, & jQuery

Bootstrap

  • Pineapple v1 is compatible with Bootstrap v3 (requires jQuery)
  • Pineapple v2 is compatible with Bootstrap v4 and v5 (requires jQuery)
  • Pineapple v3 is compatible with Bootstrap v4 and v5

jQuery

  • Pineapple v1 and v2 require jQuery and is not compatible with the slim version of jQuery. Pineapple v3 and later does not require jQuery

Documentation

See the accompanying Documentation for more information.

Development

Visit pineappleplayground.localhost locally to test any changes.

# Lint CSS
npm run lint-css

# Lint JS
npm run lint-js

# Compile CSS from SCSS and JS assets
npm run compile

Releasing

  1. Bump version in package.json and composer.json
  2. Bump version in CHANGELOG.md
  3. Bump version in scss and js header comments
  4. Bump version in install instruction links in README.md
  5. Compile assets with npm run compile
  6. Cut a new Git tag which will automatically release to NPM and Packagist