0.4.8 • Published 6 months ago

neocron v0.4.8

Weekly downloads
-
License
-
Repository
github
Last release
6 months ago

NeoCron

Introduction

NeoCron is a modern, lightweight cron scheduling react component that is styled using tailwind. It is influenced and built upon cron-converter project.

Installation

Make sure that you have these dependencies in your project: 1. react (>=18.2.0) 2. tailwindcss(>=3.3.3)

npm i neocron

Usage

  1. Include the neocron package in your app.tsx folder. We highly recommend enforcing that the component only render client-side to avoid client-server mismatches with times and timezones. You can easily do this by using a combination of state variables and useEffect. Make sure that Neocron renders conditionally as well.
import  Neocron from 'neocron'
import 'neocron/dist/src/globals.css'

export function App() {

    const [isClient, setIsClient] = useState(false);

  useEffect(() => {
    // This code runs after mount, indicating we're on the client
    setIsClient(true);
  }, []);

  const [value, setValue] = useState('')
  const defaultCronString = "* * * * 2,3"

  return <Neocron cronString={value} setCronString={setValue} defaultCronString={defaultCronString}/>
}
  1. Import the shadcn components by updating your tailwind.config.js folder and adding in this path ./node_modules/neocron/dist/src/**/*.{js,css}", to the content array like so:
import type { Config } from "tailwindcss";

const config: Config = {
  content: [
    "./pages/**/*.{js,ts,jsx,tsx,mdx}",
    "./components/**/*.{js,ts,jsx,tsx,mdx}",
    "./app/**/*.{js,ts,jsx,tsx,mdx}",
    "./node_modules/neocron/dist/src/**/*.{js,css}", //adding this to the file makes the shadcn components work
  ],
  theme: {
    extend: {
      backgroundImage: {
        "gradient-radial": "radial-gradient(var(--tw-gradient-stops))",
        "gradient-conic":
          "conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))",
      },
    },
  },
  plugins: [],
};
export default config;

Props

Prop NameDescription
cronStringThe prop that will get the selected cron string
setCronStringA setter to set the cronString
defaultCronStringA default cron string to start with
disableInputDisable the input and only have drop down selectors
disableSelectorsDisable the selectors and only have the input
disableExplainerTextDisables the schedule explainer text
selectorTextThe text in front of the first selector; can be empty

Styling

NeoCron is styled using Tailwind CSS, Radix and Shadcn. Radix is a component library that provides pre-built UI components such as Selects, Buttons, Alerts and many more. Shadcn styles these base Radix components and provides a plug-and-play experience for developers building front-end components.

0.4.8

6 months ago

0.4.7

6 months ago

0.4.6

6 months ago

0.4.5

6 months ago

0.4.3

6 months ago

0.4.1

6 months ago

0.4.0

6 months ago

0.3.9

6 months ago

0.3.8

6 months ago

0.3.7

6 months ago

0.3.6

6 months ago

0.3.5

6 months ago

0.3.4

7 months ago

0.3.3

7 months ago

0.3.1

7 months ago

0.3.0

7 months ago

0.2.0

8 months ago

0.1.8

8 months ago

0.1.7

8 months ago

0.1.6

8 months ago

0.1.5

8 months ago

0.1.4

8 months ago

0.1.3

8 months ago

0.1.2

8 months ago

0.1.1

8 months ago