Libraries tagged by whatsdev
ossobuffo/switch_to_minimal
3 Downloads
Drush hook to switch Drupal install profile to whatever profile is configured in core.extension.yml.
ordereazi/commerce-sdk
6 Downloads
Build a fully custom headless storefront - your own web app, mobile app, or POS - against a single OE Commerce store. Every endpoint below is namespaced under `/api/v1/store/...`. Building admin/back-office tooling instead? See [/docs/admin](/docs/admin). New here? [/guides/store](/guides/store) walks through getting a key, the anonymous cart session, and calling your first endpoints step by step - this page is the field-level reference to come back to afterward. ## Getting Started 1. Click the **Authorize** button at the top of this page. 2. Provide credentials: - **X-Commerce-Key** (always required) - your store's Store Access Key from Backoffice > Settings > Application APIs. `pk_store_...` (publishable) is safe for browser/mobile code; `sk_store_...` (secret) is server-to-server only and is rejected outright if a browser Origin header is present. - **Bearer** (only for endpoints acting on a specific customer - Account, Orders, Wishlists, etc.) - the token from **Auth > register** or **Auth > login**. Once authorized, you can explore and test all available endpoints directly from this interface. ## Anonymous Carts A guest cart is tracked by an `X-Session-Ref` header, not a cookie - the server generates one on your first request and echoes it back on every response after. Keep sending back whatever value you last received. Logging in carries that same cart forward onto the customer's account automatically, with no separate merge step. ## Errors Failures use RFC 9457 Problem Details (`application/problem+json`) with a stable `code` field for programmatic handling, e.g. `store_key_invalid`, `store_key_revoked`, `store_key_scope_denied`, `rate_limited`. A rejected *business* action (e.g. adding fewer than a product's minimum order quantity to the cart) instead comes back as HTTP 200 with `"success": false` and a human-readable `message` - always check `success` in the body, not just the HTTP status code. ## Rate Limits Requests are limited per Store Access Key (200/minute). The credential-stuffing surface (register/login/forgot-password/reset-password) is limited more tightly per caller IP (10 per 5 minutes). A 429 response includes a `Retry-After` header.
omniscient/omnisearch
2 Downloads
Omnisearch: search the way Doctrine is for SQL, whatever the engine - indexes declared on the classes by attributes (#[Index], #[Field]), connections and drivers, requests and responses (DBAL), a manager, finders, queries, results and objects loaded back, the indexing rule (ORM); an in-memory engine, a Doctrine bridge and a Symfony bundle. Engines are packages of their own (omnisearch/typesense).
omniscient/omnimeet
0 Downloads
Omnimeet: one contract for video meetings - open a room, let a participant in (a JavaScript engine and its options, an embedded frame, or an address), close it, read its state, hear the provider's callbacks - whatever carries the call: the two browsers themselves (omnimeet/direct) or a conferencing service (omnimeet/jitsi); and its Symfony bundle.
omniscient/omnilab
0 Downloads
Omnilab: one contract for the public science-data APIs - entities (a compound, a gene, a protein, a species, a star, an earthquake) with their properties, units and cross-references, series (a variable measured at a place over time: weather, climate, air) and catalogued products (a satellite scene, a dataset, STAC-like) - whatever the domain; a Collector that follows cross-references from one base to the next, and a Symfony bundle.
novikas/yii2-numerator
2 Downloads
Experemental extension that allows you to numerate whatever in your app
kermie/ch_highfive
0 Downloads
A module for OXID eShop to round the price on product details page to five Rappen/Cent (whatever currency you use). Might be important for example for Switzerland (AKA CH)
kelvinwongg/yapi
8 Downloads
A single declarative yaml document crud api cms framwork, or whatever
jildertmiedema/fill
14 Downloads
A helper to fill objects / dto or whatever
haiek/craft-text-encoder
20 Downloads
Encode strings, email addresses or whatever you want...
gsferro/database-schema-easy
443 Downloads
Simple and efficient way to manipulate your database connection scheme, whatever it may be.
glitchr/omnimeet
0 Downloads
Omnimeet: one contract for video meetings - open a room, let a participant in (a JavaScript engine and its options, an embedded frame, or an address), close it, read its state, hear the provider's callbacks - whatever carries the call: the two browsers themselves (omnimeet/direct) or a conferencing service (omnimeet/jitsi); and its Symfony bundle.
glitchr/omnilab
0 Downloads
Omnilab: one contract for the public science-data APIs - entities (a compound, a gene, a protein, a species, a star, an earthquake) with their properties, units and cross-references, series (a variable measured at a place over time: weather, climate, air) and catalogued products (a satellite scene, a dataset, STAC-like) - whatever the domain; a Collector that follows cross-references from one base to the next, and a Symfony bundle.
educare/analytics
2 Downloads
Get whatever data you want from google analytics.
drupal-eca-recipe/eca_lib_0052
1 Downloads
Intercepts every chat request that leaves the site through the AI module's provider proxy and sends the ones made on behalf of anonymous visitors to a cheaper provider and model, while a request made for an account keeps whatever the calling code chose. Nothing in the model calls an AI provider: it listens to the "AI request: before provider call" event that the ai_eca_interceptor submodule of AI Integration - ECA exposes, so it governs calls made by AI Assistants, automators, agents and custom code alike without owning any of them. The reroute is recorded as intent and executed by a subscriber that runs last, and it fails open - if the target provider throws, the originally chosen one answers instead. Requires the AI module at 1.4 or newer, and the provider and model ids in the reroute action have to be changed to a target configured on your site.