Download the PHP package crmleaf/compliance-calendar without Composer

On this page you can find all versions of the php package crmleaf/compliance-calendar. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package compliance-calendar

Compliance Calendar

Month-by-month due dates for PF, ESI, TDS, GST, PT and Form 16.

Expands the statutory recurrence rules into dated obligations for a financial year, so a 2019-20 calendar is generated by the same code as a 2026-27 one rather than typed out by hand.

One of the CRMLeaf payroll tools. The arithmetic and the dated statutory rate tables live in crmleaf/payroll-core; this package is the thin skin that makes one calculator installable, mountable and embeddable on its own.

[!NOTE] A wrong figure or an out-of-date rate is almost always a payroll-core matter, since that is where the tables live. Anything about this tool's routes, views or browser asset belongs here.

Install

Composer - Laravel auto-discovers the service provider, so this is the whole setup:

npm - the same calculation, re-exported from @crmleaf/payroll-js so you can install this one tool and nothing else:

[!NOTE] Not on npm yet. The script-tag route below needs no registry and works today. Installing this package straight from git will not resolve @crmleaf/payroll-js, which is not published yet either.

A plain script tag - no build step, no bundler, no server. Build the browser bundle once and serve the file yourself:

payroll.min.js is the single-file browser build. Get it by running npm run build in @crmleaf/payroll-js and copying dist/payroll.min.js into whatever your site serves as static assets.

A hosted CDN build is coming soon, which will reduce this to a single URL. Serving the file yourself works today and keeps working afterwards - it is the only option that needs no third-party request, so plenty of projects will want to stay on it.

See it working first

demo/index.html in this repository is a working copy of Compliance Calendar in one file: the form, the calculation and the working, with no build step and no server. Drop payroll.min.js beside it and open it from disk.

Nothing on that page reaches the network, which is the point: it is a calculator people paste salary figures into.

Use it

Plain PHP, no framework and no container:

Laravel - resolve it from the container, or type-hint it anywhere:

Blade - one component, no controller:

HTTP - off by default. Publish the config and turn the route on:

The JSON response carries the figures, the working and the statutory citations:

JavaScript:

Inputs

Field Type Required Default Notes
financial_year string Yes "2025-26" Written as 2025-26, not 2025-2026.
only array or JSON No - Codes to keep, for example PF_ECR or TDS_PAY. Leave empty for the full calendar.
qrmp boolean No false Swaps the monthly GST obligations for their quarterly variants.
as_of date (YYYY-MM-DD) No -

Optional fields you leave out are omitted from the call entirely, so the calculator's own documented defaults apply.

Every figure here rests on a statutory rate, so the call takes as_of. Set it and the calculation runs on the rates in force on that date, which is what makes a prior year recomputable rather than merely rememberable.

Statutory basis

EPF Scheme 1952 para 38; ESI (General) Regulations 1950 regulation 31; Income-tax Rules 1962 rules 30, 31A and 31; CGST Rules 2017; the professional tax and labour welfare fund enactments of each state.

Rates are data, not code: they live in dated tables with a cited source in crmleaf/payroll-core, so a rate change is a new dated entry rather than an edit to a constant.

[!IMPORTANT] This package implements our reading of the applicable statutes and is provided without warranty. It is a calculation library, not tax advice. Verify against your own compliance obligations before relying on the output for statutory filing.

Publishing

Tag Publishes
compliance-calendar-config config/compliance-calendar.php
compliance-calendar-views resources/views/vendor/compliance-calendar
compliance-calendar-assets public/vendor/compliance-calendar

Licence

MIT © CRMLeaf. Use it commercially, embed it, fork it.


All versions of compliance-calendar with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
crmleaf/payroll-core Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package crmleaf/compliance-calendar contains the following files

Loading the files please wait ...