Javascript type validate
A ridiculously light-weight argument validator (now browser friendly)
Validates whether a string matches the production for an XML name or qualified name
Stylish, intuitive and user-friendly prompt system. Fast and lightweight enough for small projects, powerful and extensible enough for the most advanced use cases.
The Mintlify CLI
The Mintlify CLI
Give me a string and I'll tell you if it's a valid npm package name
No description provided.
Lightweight, beautiful and user-friendly prompts
Email address and domain validation
TypeScript definitions for validate-npm-package-name
Check if a buffer contains valid UTF-8
Loosely validate an event.
User validations for npm
Email address and domain validation
Match balanced character pairs, like "{" and "}"
AWS SDK for JavaScript Codedeploy Client for Node.js, Browser and React Native
HTML parser and serializer.
A collection of essential TypeScript types
Tool for transforming styles with JS plugins
Build, Validate, Route, Authenticate and Mock using OpenAPI definitions. Framework-agnostic
Check if a string is SVG
AWS SDK for JavaScript Ivs Client for Node.js, Browser and React Native
Give me a string and I'll tell you if it's a valid npm package license string
The Rust Architecture for XML Binding
Verify Secure Scuttlebutt (SSB) hash chains (in parallel)
ProxyAuthentication allows two Rails applications to share an authenticated user, through a url token. App A can (through its own authentication system, e.g. Devise) authenticate a user, and then generate a link to App B with the encoded user info (in the url token). App B can then validate the request and decode the user info.
A Ruby gem for vector and matrix operations. Provides methods to calculate: - Matrix determinant: Determinant(matrix) input: matrix - Array of arrays size of nxn output: res[Int] - simple Integer - Scalar product of vectors scalar_prod(a, b) input: a[Array], b[Array]- vectors a and b output: res[Int] - simple Integer as a result of scalar prod - Cross product for 3D vectors cross_prod(a, b) input: a[Array], b[Array] - vectors a and b with dimension n = 3; output: res[Array] - vector with the size = 3 (its dimension) as a result of cross prod - Help function help() output: String with info about gem funcs Includes comprehensive error handling and input validation. Designed for educational use and basic linear algebra computations. Ruby-гем для операций с векторами и матрицами. Предоставляет методы для вычисления: - Определителя матрицы Determinant(matrix) input: matrix - матрица (массив массивов) размера nxn output: res[Int] - целое число - Скалярного произведения векторов scalar_prod(a, b) input: a[Array], b[Array] - векторы (массивы) a и b output: res[Int] - целое число как результат скалярного произведения - Векторного произведения для 3D векторов cross_prod(a, b) input: a[Array], b[Array] - векторы (массивы) a и b размером n = 3; output: res[Array] - вектор (массив) с размером = 3 (его размерность) как результат векторного произведения векторов - Функция "помощь" help() output: Строка с информацией про математические методы гема Включает обработку ошибок и валидацию входных данных. Разработан для образовательных целей и базовых вычислений линейной алгебры.
Converts text formatted with an exceedingly simple markup language into valid HTML (iron clad guarantee!) - perfect for comments on your blog. Textile isn't good for this because not only does it do too much (do commenters really need subscript?), but it can also output invalid HTML (try a <b> tag over multiple lines...). Whitelisting HTML is another option, but you still need some sort of parsing if you want syntax highlighting. Integrates with CodeRay for sexy syntax highlighting.
# Mod10 A simple gem to generate mod_10 check digits and check if integers are mod10 valid. ## Installation Add this line to your application's Gemfile: ```ruby gem 'mod_10' ``` And then execute: $ bundle Or install it yourself as: $ gem install mod_10 ## Usage Include the Mod10 module to make the following two methods available - generate_check_digit(value) Which returns an integer value for the mod10 check digit of a string or integer. Note: If the value is 0, then the argument was already mod10 valid. - is_mod10?(value) Returns true or false for the tested value is it is or isn't mod10 valid. ## Contributing 1. Fork it ( https://github.com/[my-github-username]/mod_10/fork ) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request
REST API for electronic invoicing in France: Factur-X (CII), UBL 2.1, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Invoice Generation - **Formats**: CII XML, UBL 2.1 XML, or Factur-X PDF/A-3 - **Profiles** (CII/PDF): MINIMUM, BASIC, EN16931, EXTENDED - **UBL**: Always EN16931 compliant - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT), UBL 2.1 (OASIS) - **Simplified Format**: Generation from SIRET + auto-enrichment (Chorus Pro API + Business Search) ### ✅ Factur-X - Validation - **XML Validation**: Schematron (45 to 210+ rules depending on profile) - **PDF Validation**: PDF/A-3, Factur-X XMP metadata - **VeraPDF**: Strict PDF/A validation (146+ ISO 19005-3 rules) ### ✍️ Electronic Signature - **Standards**: PAdES-B-B, PAdES-B-T (RFC 3161 timestamping), PAdES-B-LT (long-term archival) - **eIDAS Levels**: SES (self-signed), AdES (commercial CA), QES (QTSP) - **Validation**: Cryptographic integrity and certificate verification ### 📋 Flux 6 - Invoice Lifecycle (CDAR) - **CDAR Messages**: Acknowledgements, invoice statuses - **PPF Statuses**: REFUSED (210), PAID (212) ### 📊 Flux 10 - E-Reporting - **Tax Declarations**: International B2B, B2C - **Flow Types**: 10.1 (B2B transactions), 10.2 (B2B payments), 10.3 (B2C transactions), 10.4 (B2C payments) ### 📡 AFNOR PDP/PA (XP Z12-013) - **Flow Service**: Submit and search flows to PDPs - **Directory Service**: Company search (SIREN/SIRET) - **Multi-client**: Support for multiple PDP configs per user ### 🏛️ Chorus Pro - **Public Sector Invoicing**: Complete API for Chorus Pro ### ⏳ Async Tasks - **Celery**: Asynchronous generation, validation and signing - **Polling**: Status tracking via `/tasks/{task_id}/status` - **Webhooks**: Automatic notifications when tasks complete ## 🔒 Authentication All requests require a **JWT token** in the Authorization header: ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### How to obtain a JWT token? #### 🔑 Method 1: `/api/token/` API (Recommended) **URL:** `https://factpulse.fr/api/token/` This method is **recommended** for integration in your applications and CI/CD workflows. **Prerequisites:** Having set a password on your account **For users registered via email/password:** - You already have a password, use it directly **For users registered via OAuth (Google/GitHub):** - You must first set a password at: https://factpulse.fr/accounts/password/set/ - Once the password is created, you can use the API **Request example:** ```bash curl -X POST https://factpulse.fr/api/token/ \ -H "Content-Type: application/json" \ -d '{ "username": "your_email@example.com", "password": "your_password" }' ``` **Optional `client_uid` parameter:** To select credentials for a specific client (PA/PDP, Chorus Pro, signing certificates), add `client_uid`: ```bash curl -X POST https://factpulse.fr/api/token/ \ -H "Content-Type: application/json" \ -d '{ "username": "your_email@example.com", "password": "your_password", "client_uid": "550e8400-e29b-41d4-a716-446655440000" }' ``` The `client_uid` will be included in the JWT and allow the API to automatically use: - AFNOR/PDP credentials configured for this client - Chorus Pro credentials configured for this client - Electronic signature certificates configured for this client **Response:** ```json { "access": "eyJ0eXAiOiJKV1QiLCJhbGc...", // Access token (validity: 30 min) "refresh": "eyJ0eXAiOiJKV1QiLCJhbGc..." // Refresh token (validity: 7 days) } ``` **Advantages:** - ✅ Full automation (CI/CD, scripts) - ✅ Programmatic token management - ✅ Refresh token support for automatic access renewal - ✅ Easy integration in any language/tool #### 🖥️ Method 2: Dashboard Generation (Alternative) **URL:** https://factpulse.fr/api/dashboard/ This method is suitable for quick tests or occasional use via the graphical interface. **How it works:** - Log in to the dashboard - Use the "Generate Test Token" or "Generate Production Token" buttons - Works for **all** users (OAuth and email/password), without requiring a password **Token types:** - **Test Token**: 24h validity, 1000 calls/day quota (free) - **Production Token**: 7 days validity, quota based on your plan **Advantages:** - ✅ Quick for API testing - ✅ No password required - ✅ Simple visual interface **Disadvantages:** - ❌ Requires manual action - ❌ No refresh token - ❌ Less suited for automation ### 📚 Full Documentation For more information on authentication and API usage: https://factpulse.fr/documentation-api/
= dm-is-published This plugin makes it very easy to add different states to your models, like 'draft' vs 'live'. By default it also adds validations of the field value. Originally inspired by the Rails plugin +acts_as_publishable+ by <b>fr.ivolo.us</b>. == Installation # Add GitHub to your RubyGems sources $ gem sources -a http://gems.github.com $ (sudo)? gem install kematzy-dm-is-published <b>NB! Depends upon the whole DataMapper suite being installed, and has ONLY been tested with DM 0.10.0 (next branch).</b> == Getting Started First of all, for a better understanding of this gem, make sure you study the '<tt>dm-is-published/spec/integration/published_spec.rb</tt>' file. ---- Require +dm-is-published+ in your app. require 'dm-core' # must be required first require 'dm-is-published' Lets say we have an Article class, and each Article can have a current state, ie: whether it's Live, Draft or an Obituary awaiting the death of someone famous (real or rumored) class Article include DataMapper::Resource property :id, Serial property :title, String ...<snip> is :published end Once you have your Article model we can create our Articles just as normal Article.create(:title => 'Example 1') The instance of <tt>Article.get(1)</tt> now has the following things for free: * a <tt>:publish_status</tt> attribute with the value <tt>'live'</tt>. Default choices are <tt>[ :live, :draft, :hidden ]</tt>. * <tt>:is_live?, :is_draft? or :is_hidden?</tt> methods that returns true/false based upon the state. * <tt>:save_as_live</tt>, <tt>:save_as_draft</tt> or <tt>:save_as_hidden</tt> converts the instance to the state and saves it. * <tt>:publishable?</tt> method that returns true for models where <tt>is :published </tt> has been declared, but <b>false</b> for those where it has not been declared. The Article class also gets a bit of new functionality: Article.all(:draft) => finds all Articles with :publish_status = :draft Article.all(:draft, :author => @author_joe ) => finds all Articles with :publish_status = :draft and author == Joe Todo Need to write more documentation here.. == Usage Scenarios In a Blog/Publishing scenario you could use it like this: class Article ...<snip>... is :published :live, :draft, :hidden end Whereas in another scenario - like in a MenuItem model for a Restaurant - you could use it like this: class MenuItem ...<snip>... is :published :on, :off # the item is either on the menu or not end == RTFM As I said above, for a better understanding of this gem/plugin, make sure you study the '<tt>dm-is-published/spec/integration/published_spec.rb</tt>' file. == Errors / Bugs If something is not behaving intuitively, it is a bug, and should be reported. Report it here: http://github.com/kematzy/dm-is-published/issues == Credits Copyright (c) 2009-07-11 [kematzy gmail com] Loosely based on the ActsAsPublishable plugin by [http://fr.ivolo.us/posts/acts-as-publishable] == Licence Released under the MIT license.
= tagomatic Simple command-line mp3 tagger based on mp3info gem. Supports folder-specific configuration files. Another mp3 tagger the world does not need. But I needed it. I have a large collection of old mp3 files. From times when tagging was mostly based on the file and folder names. When v2 tags where nowhere close.. == Overview Modes of operation: * The tagger will try to guess the tags from the full file path by applying a set of known formats. * The tagger will apply specific tags given on the command-line. * The tagger will match specific formats given on the command-line. * Arbitrary combination of the before-mentioned modes. The scanner supports recursive folder handling. Of course. Right now v2 tags are the focus. It is probably best to call this alpha ware. == Usage For my genre/artist/album/track.mp3 collection I use this invocation pattern: tagomatic --underscores --guess --recurse --showtags --errorstops --cleantags /media/music/ Then I add folder-specific .tagomatic or .format= files whenever an error occurs. == The .tagomatic file You can put the (long version) of the command line options into folder-specific .tagomatic files. These options are then valid only for this folder and sub-folders. This is useful - for example - if you want to switch guessing off for sub-folders. == The .format= files You can add files named .format= to sub-folders. They will be picked up by tagomatic and added as custom formats just as if you would have passed them on the command line using the --format option. Because the slash is not allowed in file names you have to replace it with a vertical dash like in this example: .format=%g|%a|%b|%n - %t.mp3 These formats are valid only for this folder and sub-folders. == Copyright Copyright (c) 2009 Daniel Lukic. See LICENSE for details.
Validate the phone number and content of an SMS Message. This gem does not send SMS messages. It just makes sure the arguments are valid.
Send SMS messages using the CellForce API
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.