{"id":21101274,"url":"https://github.com/manuelgil/vscode-codeigniter4-snippets","last_synced_at":"2026-02-13T19:33:23.179Z","repository":{"id":190541625,"uuid":"681938612","full_name":"ManuelGil/vscode-codeigniter4-snippets","owner":"ManuelGil","description":"This extension for Visual Studio Code adds snippets for CodeIgniter 4 Framework. With this extension, you can easily write CodeIgniter 4 Framework code.","archived":false,"fork":false,"pushed_at":"2025-07-17T03:19:38.000Z","size":2000,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-03T06:09:06.171Z","etag":null,"topics":["codeigniter","codeigniter-4","codeigniter4","codeigniter4-snippets","snippets","visual-studio-code","visual-studio-extension","vscode","vscode-extension","vscode-snippets"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ManuelGil.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["ManuelGil"],"ko_fi":"ManuelGil","custom":["https://paypal.me/ManuelFGil","https://www.buymeacoffee.com/ManuelGil"]}},"created_at":"2023-08-23T05:05:03.000Z","updated_at":"2026-01-07T22:52:25.000Z","dependencies_parsed_at":"2023-12-30T21:54:53.090Z","dependency_job_id":"3304a55a-42b7-4292-88f3-694a3ff9ca1d","html_url":"https://github.com/ManuelGil/vscode-codeigniter4-snippets","commit_stats":null,"previous_names":["manuelgil/vscode-codeigniter4-snippets"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/ManuelGil/vscode-codeigniter4-snippets","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManuelGil%2Fvscode-codeigniter4-snippets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManuelGil%2Fvscode-codeigniter4-snippets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManuelGil%2Fvscode-codeigniter4-snippets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManuelGil%2Fvscode-codeigniter4-snippets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ManuelGil","download_url":"https://codeload.github.com/ManuelGil/vscode-codeigniter4-snippets/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ManuelGil%2Fvscode-codeigniter4-snippets/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29415670,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codeigniter","codeigniter-4","codeigniter4","codeigniter4-snippets","snippets","visual-studio-code","visual-studio-extension","vscode","vscode-extension","vscode-snippets"],"created_at":"2024-11-19T23:44:03.993Z","updated_at":"2026-02-13T19:33:23.164Z","avatar_url":"https://github.com/ManuelGil.png","language":null,"readme":"# CodeIgniter 4 Snippets\n\n[![VS Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/imgildev.vscode-codeigniter4-snippets?style=for-the-badge\u0026label=VS%20Marketplace\u0026logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets)\n[![Installs](https://img.shields.io/visual-studio-marketplace/i/imgildev.vscode-codeigniter4-snippets?style=for-the-badge\u0026logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets)\n[![Downloads](https://img.shields.io/visual-studio-marketplace/d/imgildev.vscode-codeigniter4-snippets?style=for-the-badge\u0026logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets)\n[![Rating](https://img.shields.io/visual-studio-marketplace/r/imgildev.vscode-codeigniter4-snippets?style=for-the-badge\u0026logo=visual-studio-code)](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets\u0026ssr=false#review-details)\n[![GitHub Stars](https://img.shields.io/github/stars/ManuelGil/vscode-codeigniter4-snippets?style=for-the-badge\u0026logo=github)](https://github.com/ManuelGil/vscode-codeigniter4-snippets)\n[![License](https://img.shields.io/github/license/ManuelGil/vscode-codeigniter4-snippets?style=for-the-badge\u0026logo=github)](https://github.com/ManuelGil/vscode-codeigniter4-snippets/blob/main/LICENSE)\n\n\u003e A Visual Studio Code extension providing a rich collection of snippets and autocomplete entries for CodeIgniter 4 development.\n\n## Overview\n\nThis extension accelerates CodeIgniter 4 development by offering:\n\n- **Class Scaffolding**: Controllers, Models, Entities, Filters, Migrations, Seeders, etc.\n- **Helper Functions \u0026 Constants**: `env()`, `csrf_field()`, `CI_VERSION`, `APPPATH`, and more.\n- **Query Builder API**: `$builder-\u003ewhere()`, `join()`, `groupBy()`, `limit()`, etc.\n- **HTTP \u0026 Response**: Request, Response, Redirect, Session, Cookie, and File handling snippets.\n- **Authentication \u0026 Routing**: Simplify `route_to()`, `$routes-\u003eget()`, and related calls.\n- **Utility Classes**: Time, Validation, Pagination, Image, Encryption, and Email helpers.\n\nInstead of memorizing long method names, type a short prefix (e.g. `ci:class:controller`) and press **Tab** to expand.\n\n## Requirements\n\n- CodeIgniter 4.3.0 or later\n- Visual Studio Code 1.75.0 or later (or any compatible VS Code–based editor)\n\n## Installation\n\n1. Open **Visual Studio Code** (or VSCodium, WindSurf, Cursor).\n2. Navigate to the **Extensions** view (`Ctrl+Shift+X` on Windows/Linux or `⌘+Shift+X` on macOS).\n3. Search for **CodeIgniter 4 Snippets** or install from the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets).\n4. Reload the editor to activate the extension.\n\n## Usage\n\n1. Open a PHP file within a CodeIgniter 4 project.\n2. Type a snippet prefix, for example:\n\n   ```php\n   ci:class:controller\n   ```\n\n3. Press **Tab** or **Enter** to expand into the full class boilerplate.\n\nSnippet prefixes are organized by category:\n\n### Spark\n\n| Snippet             | Purpose          |\n| ------------------- | ---------------- |\n| ci:class:config     | class config     |\n| ci:class:controller | class controller |\n| ci:class:entity     | class entity     |\n| ci:class:filter     | class filter     |\n| ci:class:migration  | class migration  |\n| ci:class:model      | class model      |\n| ci:class:seeder     | class seeder     |\n| ci:class:validation | class validation |\n\n### Functions\n\n| Snippet                        | Purpose                     |\n| ------------------------------ | --------------------------- |\n| ci:app_timezone                | app_timezone                |\n| ci:cache                       | cache                       |\n| ci:clean_path                  | clean_path                  |\n| ci:command                     | command                     |\n| ci:config                      | config                      |\n| ci:cookie                      | cookie                      |\n| ci:cookies                     | cookies                     |\n| ci:csrf_token                  | csrf_token                  |\n| ci:csrf_header                 | csrf_header                 |\n| ci:csrf_hash                   | csrf_hash                   |\n| ci:csrf_field                  | csrf_field                  |\n| ci:csrf_meta                   | csrf_meta                   |\n| ci:csp_style_nonce             | csp_style_nonce             |\n| ci:csp_script_nonce            | csp_script_nonce            |\n| ci:db_connect                  | db_connect                  |\n| ci:env                         | env                         |\n| ci:esc                         | esc                         |\n| ci:force_https                 | force_https                 |\n| ci:function_usable             | function_usable             |\n| ci:helper                      | helper                      |\n| ci:is_cli                      | is_cli                      |\n| ci:is_really_writable          | is_really_writable          |\n| ci:is_windows                  | is_windows                  |\n| ci:lang                        | lang                        |\n| ci:log_message                 | log_message                 |\n| ci:model                       | model                       |\n| ci:old                         | old                         |\n| ci:redirect                    | redirect                    |\n| ci:_solidus                    | _solidus                    |\n| ci:remove_invisible_characters | remove_invisible_characters |\n| ci:request                     | request                     |\n| ci:response                    | response                    |\n| ci:route_to                    | route_to                    |\n| ci:session                     | session                     |\n| ci:service                     | service                     |\n| ci:single_service              | single_service              |\n| ci:slash_item                  | slash_item                  |\n| ci:stringify_attributes        | stringify_attributes        |\n| ci:timer                       | timer                       |\n| ci:view                        | view                        |\n| ci:view_cell                   | view_cell                   |\n| ci:class_basename              | class_basename              |\n| ci:class_uses_recursive        | class_uses_recursive        |\n| ci:trait_uses_recursive        | trait_uses_recursive        |\n\n### Constants\n\n| Snippet        | Purpose     |\n| -------------- | ----------- |\n| ci:CI_VERSION  | CI_VERSION  |\n| ci:ENVIRONMENT | ENVIRONMENT |\n| ci:APPPATH     | APPPATH     |\n| ci:ROOTPATH    | ROOTPATH    |\n| ci:SYSTEMPATH  | SYSTEMPATH  |\n| ci:FCPATH      | FCPATH      |\n| ci:WRITEPATH   | WRITEPATH   |\n| ci:SECOND      | SECOND      |\n| ci:MINUTE      | MINUTE      |\n| ci:HOUR        | HOUR        |\n| ci:DAY         | DAY         |\n| ci:WEEK        | WEEK        |\n| ci:MONTH       | MONTH       |\n| ci:YEAR        | YEAR        |\n| ci:DECADE      | DECADE      |\n\n### Query Builder\n\n| Snippet                  | Purpose               |\n| ------------------------ | --------------------- |\n| ci:builder:db            | $builder-\u003edb          |\n| ci:testMode              | testMode              |\n| ci:getTable              | getTable              |\n| ci:getBinds              | getBinds              |\n| ci:ignore                | ignore                |\n| ci:select                | select                |\n| ci:selectMax             | selectMax             |\n| ci:selectMin             | selectMin             |\n| ci:selectAvg             | selectAvg             |\n| ci:selectSum             | selectSum             |\n| ci:selectCount           | selectCount           |\n| ci:selectSubquery        | selectSubquery        |\n| ci:distinct              | distinct              |\n| ci:from                  | from                  |\n| ci:fromSubquery          | fromSubquery          |\n| ci:join                  | join                  |\n| ci:where                 | where                 |\n| ci:orWhere               | orWhere               |\n| ci:whereIn               | whereIn               |\n| ci:orWhereIn             | orWhereIn             |\n| ci:whereNotIn            | whereNotIn            |\n| ci:orWhereNotIn          | orWhereNotIn          |\n| ci:havingIn              | havingIn              |\n| ci:orHavingIn            | orHavingIn            |\n| ci:havingNotIn           | havingNotIn           |\n| ci:orHavingNotIn         | orHavingNotIn         |\n| ci:like                  | like                  |\n| ci:notLike               | notLike               |\n| ci:orLike                | orLike                |\n| ci:orNotLike             | orNotLike             |\n| ci:havingLike            | havingLike            |\n| ci:notHavingLike         | notHavingLike         |\n| ci:orHavingLike          | orHavingLike          |\n| ci:orNotHavingLike       | orNotHavingLike       |\n| ci:union                 | union                 |\n| ci:unionAll              | unionAll              |\n| ci:groupStart            | groupStart            |\n| ci:orGroupStart          | orGroupStart          |\n| ci:notGroupStart         | notGroupStart         |\n| ci:orNotGroupStart       | orNotGroupStart       |\n| ci:groupEnd              | groupEnd              |\n| ci:havingGroupStart      | havingGroupStart      |\n| ci:orHavingGroupStart    | orHavingGroupStart    |\n| ci:notHavingGroupStart   | notHavingGroupStart   |\n| ci:orNotHavingGroupStart | orNotHavingGroupStart |\n| ci:havingGroupEnd        | havingGroupEnd        |\n| ci:groupBy               | groupBy               |\n| ci:having                | having                |\n| ci:orHaving              | orHaving              |\n| ci:orderBy               | orderBy               |\n| ci:limit                 | limit                 |\n| ci:offset                | offset                |\n| ci:set                   | set                   |\n| ci:getSetData            | getSetData            |\n| ci:getCompiledSelect     | getCompiledSelect     |\n| ci:get                   | get                   |\n| ci:countAll              | countAll              |\n| ci:countAllResults       | countAllResults       |\n| ci:getCompiledQBWhere    | getCompiledQBWhere    |\n| ci:getWhere              | getWhere              |\n| ci:setData               | setData               |\n| ci:getCompiledUpsert     | getCompiledUpsert     |\n| ci:upsert                | upsert                |\n| ci:upsertBatch           | upsertBatch           |\n| ci:updateFields          | updateFields          |\n| ci:onConstraint          | onConstraint          |\n| ci:setQueryAsData        | setQueryAsData        |\n| ci:insertBatch           | insertBatch           |\n| ci:setInsertBatch        | setInsertBatch        |\n| ci:getCompiledInsert     | getCompiledInsert     |\n| ci:insert                | insert                |\n| ci:replace               | replace               |\n| ci:getCompiledUpdate     | getCompiledUpdate     |\n| ci:update                | update                |\n| ci:updateBatch           | updateBatch           |\n| ci:setUpdateBatch        | setUpdateBatch        |\n| ci:emptyTable            | emptyTable            |\n| ci:truncate              | truncate              |\n| ci:getCompiledDelete     | getCompiledDelete     |\n| ci:delete                | delete                |\n| ci:deleteBatch           | deleteBatch           |\n| ci:increment             | increment             |\n| ci:decrement             | decrement             |\n| ci:resetQuery            | resetQuery            |\n\n### Cookie\n\n| Snippet                       | Purpose                      |\n| ----------------------------- | ---------------------------- |\n| ci:cookie:setDefaults         | Cookie::setDefaults          |\n| ci:cookie:fromHeaderString    | Cookie::fromHeaderString     |\n| ci:cookie:getId               | $cookie-\u003egetId               |\n| ci:cookie:getPrefix           | $cookie-\u003egetPrefix           |\n| ci:cookie:getName             | $cookie-\u003egetName             |\n| ci:cookie:getPrefixedName     | $cookie-\u003egetPrefixedName     |\n| ci:cookie:getValue            | $cookie-\u003egetValue            |\n| ci:cookie:getExpiresTimestamp | $cookie-\u003egetExpiresTimestamp |\n| ci:cookie:getExpiresString    | $cookie-\u003egetExpiresString    |\n| ci:cookie:isExpired           | $cookie-\u003eisExpired           |\n| ci:cookie:getMaxAge           | $cookie-\u003egetMaxAge           |\n| ci:cookie:getPath             | $cookie-\u003egetPath             |\n| ci:cookie:getDomain           | $cookie-\u003egetDomain           |\n| ci:cookie:isSecure            | $cookie-\u003eisSecure            |\n| ci:cookie:isHTTPOnly          | $cookie-\u003eisHTTPOnly          |\n| ci:cookie:getSameSite         | $cookie-\u003egetSameSite         |\n| ci:cookie:isRaw               | $cookie-\u003eisRaw               |\n| ci:cookie:getOptions          | $cookie-\u003egetOptions          |\n| ci:cookie:withPrefix          | $cookie-\u003ewithPrefix          |\n| ci:cookie:withName            | $cookie-\u003ewithName            |\n| ci:cookie:withValue           | $cookie-\u003ewithValue           |\n| ci:cookie:withExpires         | $cookie-\u003ewithExpires         |\n| ci:cookie:withExpired         | $cookie-\u003ewithExpired         |\n| ci:cookie:withPath            | $cookie-\u003ewithPath            |\n| ci:cookie:withDomain          | $cookie-\u003ewithDomain          |\n| ci:cookie:withSecure          | $cookie-\u003ewithSecure          |\n| ci:cookie:withHTTPOnly        | $cookie-\u003ewithHTTPOnly        |\n| ci:cookie:withSameSite        | $cookie-\u003ewithSameSite        |\n| ci:cookie:withRaw             | $cookie-\u003ewithRaw             |\n| ci:cookie:offsetExists        | $cookie-\u003eoffsetExists        |\n| ci:cookie:offsetGet           | $cookie-\u003eoffsetGet           |\n| ci:cookie:offsetSet           | $cookie-\u003eoffsetSet           |\n| ci:cookie:offsetUnset         | $cookie-\u003eoffsetUnset         |\n| ci:cookie:toHeaderString      | $cookie-\u003etoHeaderString      |\n| ci:cookie:toArray             | $cookie-\u003etoArray             |\n| ci:cookie:set_cookie          | set_cookie                   |\n| ci:cookie:get_cookie          | get_cookie                   |\n| ci:cookie:delete_cookie       | delete_cookie                |\n| ci:cookie:has_cookie          | has_cookie                   |\n\n### Database\n\n| Snippet                       | Purpose                      |\n| ----------------------------- | ---------------------------- |\n| ci:db                         | $db                          |\n| ci:db:reconnect               | $db-\u003ereconnect               |\n| ci:db:close                   | $db-\u003eclose                   |\n| ci:db:query                   | $db-\u003equery                   |\n| ci:db:simpleQuery             | $db-\u003esimpleQuery             |\n| ci:db:prefixTable             | $db-\u003eprefixTable             |\n| ci:db:affectedRows            | $db-\u003eaffectedRows            |\n| ci:db:escape                  | $db-\u003eescape                  |\n| ci:db:escapeString            | $db-\u003eescapeString            |\n| ci:db:escapeLikeString        | $db-\u003eescapeLikeString        |\n| ci:db:setPrefix               | $db-\u003esetPrefix               |\n| ci:db:getPrefix               | $db-\u003egetPrefix               |\n| ci:db:getPlatform             | $db-\u003egetPlatform             |\n| ci:db:setAliasedTables        | $db-\u003esetAliasedTables        |\n| ci:db:addTableAlias           | $db-\u003eaddTableAlias           |\n| ci:db:execute                 | $db-\u003eexecute                 |\n| ci:db:transOff                | $db-\u003etransOff                |\n| ci:db:transStrict             | $db-\u003etransStrict             |\n| ci:db:transStart              | $db-\u003etransStart              |\n| ci:db:transException          | $db-\u003etransException          |\n| ci:db:transComplete           | $db-\u003etransComplete           |\n| ci:db:transStatus             | $db-\u003etransStatus             |\n| ci:db:transBegin              | $db-\u003etransBegin              |\n| ci:db:transCommit             | $db-\u003etransCommit             |\n| ci:db:transRollback           | $db-\u003etransRollback           |\n| ci:db:table                   | $db-\u003etable                   |\n| ci:db:newQuery                | $db-\u003enewQuery                |\n| ci:db:prepare                 | $db-\u003eprepare                 |\n| ci:db:getLastQuery            | $db-\u003egetLastQuery            |\n| ci:db:showLastQuery           | $db-\u003eshowLastQuery           |\n| ci:db:getConnectStart         | $db-\u003egetConnectStart         |\n| ci:db:getConnectDuration      | $db-\u003egetConnectDuration      |\n| ci:db:protectIdentifiers      | $db-\u003eprotectIdentifiers      |\n| ci:db:escapeIdentifiers       | $db-\u003eescapeIdentifiers       |\n| ci:db:listTables              | $db-\u003elistTables              |\n| ci:db:tableExists             | $db-\u003etableExists             |\n| ci:db:getFieldNames           | $db-\u003egetFieldNames           |\n| ci:db:fieldExists             | $db-\u003efieldExists             |\n| ci:db:getFieldData            | $db-\u003egetFieldData            |\n| ci:db:getIndexData            | $db-\u003egetIndexData            |\n| ci:db:getForeignKeyData       | $db-\u003egetForeignKeyData       |\n| ci:db:disableForeignKeyChecks | $db-\u003edisableForeignKeyChecks |\n| ci:db:enableForeignKeyChecks  | $db-\u003eenableForeignKeyChecks  |\n| ci:db:pretend                 | $db-\u003epretend                 |\n| ci:db:resetDataCache          | $db-\u003eresetDataCache          |\n| ci:db:isWriteType             | $db-\u003eisWriteType             |\n| ci:db:error                   | $db-\u003eerror                   |\n| ci:db:insertID                | $db-\u003einsertID                |\n\n### Email\n\n| Snippet                   | Purpose                  |\n| ------------------------- | ------------------------ |\n| ci:email:initialize       | $email-\u003einitialize       |\n| ci:email:clear            | $email-\u003eclear            |\n| ci:email:setFrom          | $email-\u003esetFrom          |\n| ci:email:setReplyTo       | $email-\u003esetReplyTo       |\n| ci:email:setTo            | $email-\u003esetTo            |\n| ci:email:setCC            | $email-\u003esetCC            |\n| ci:email:setBCC           | $email-\u003esetBCC           |\n| ci:email:setSubject       | $email-\u003esetSubject       |\n| ci:email:setMessage       | $email-\u003esetMessage       |\n| ci:email:attach           | $email-\u003eattach           |\n| ci:email:setAttachmentCID | $email-\u003esetAttachmentCID |\n| ci:email:setHeader        | $email-\u003esetHeader        |\n| ci:email:setAltMessage    | $email-\u003esetAltMessage    |\n| ci:email:setMailType      | $email-\u003esetMailType      |\n| ci:email:setWordWrap      | $email-\u003esetWordWrap      |\n| ci:email:setProtocol      | $email-\u003esetProtocol      |\n| ci:email:setPriority      | $email-\u003esetPriority      |\n| ci:email:setNewline       | $email-\u003esetNewline       |\n| ci:email:setCRLF          | $email-\u003esetCRLF          |\n| ci:email:validateEmail    | $email-\u003evalidateEmail    |\n| ci:email:isValidEmail     | $email-\u003eisValidEmail     |\n| ci:email:cleanEmail       | $email-\u003ecleanEmail       |\n| ci:email:wordWrap         | $email-\u003ewordWrap         |\n| ci:email:send             | $email-\u003esend             |\n| ci:email:batchBCCSend     | $email-\u003ebatchBCCSend     |\n| ci:email:printDebugger    | $email-\u003eprintDebugger    |\n| ci:email:archive          | config archive           |\n| ci:email:fromEmail        | config fromEmail         |\n| ci:email:fromName         | config fromName          |\n| ci:email:userAgent        | config userAgent         |\n| ci:email:mailPath         | config mailPath          |\n| ci:email:protocol         | config protocol          |\n| ci:email:SMTPHost         | config SMTPHost          |\n| ci:email:SMTPUser         | config SMTPUser          |\n| ci:email:SMTPPass         | config SMTPPass          |\n| ci:email:SMTPPort         | config SMTPPort          |\n| ci:email:SMTPTimeout      | config SMTPTimeout       |\n| ci:email:SMTPKeepAlive    | config SMTPKeepAlive     |\n| ci:email:SMTPCrypto       | config SMTPCrypto        |\n| ci:email:wordWrap         | config wordWrap          |\n| ci:email:wrapChars        | config wrapChars         |\n| ci:email:mailType         | config mailType          |\n| ci:email:charset          | config charset           |\n| ci:email:altMessage       | config altMessage        |\n| ci:email:validate         | config validate          |\n| ci:email:priority         | config priority          |\n| ci:email:newline          | config newline           |\n| ci:email:CRLF             | config CRLF              |\n| ci:email:DSN              | config DSN               |\n| ci:email:sendMultipart    | config sendMultipart     |\n| ci:email:BCCBatchMode     | config BCCBatchMode      |\n| ci:email:BCCBatchSize     | config BCCBatchSize      |\n\n### Encryption\n\n| Snippet                        | Purpose                 |\n| ------------------------------ | ----------------------- |\n| ci:encryption:encrypt          | $encrypter-\u003eencrypt     |\n| ci:encryption:decrypt          | $encrypter-\u003edecrypt     |\n| ci:encryptation:key            | $config-\u003ekey            |\n| ci:encryptation:driver         | $config-\u003edriver         |\n| ci:encryptation:blockSize      | $config-\u003eblockSize      |\n| ci:encryptation:digest         | $config-\u003edigest         |\n| ci:encryptation:rawData        | $config-\u003erawData        |\n| ci:encryptation:encryptKeyInfo | $config-\u003eencryptKeyInfo |\n| ci:encryptation:authKeyInfo    | $config-\u003eauthKeyInfo    |\n| ci:encryptation:cipher         | $config-\u003ecipher         |\n\n### File\n\n| Snippet                    | Purpose                   |\n| -------------------------- | ------------------------- |\n| ci:file:getSize            | $file-\u003egetSize            |\n| ci:file:getSizeByUnit      | $file-\u003egetSizeByUnit      |\n| ci:file:guessExtension     | $file-\u003eguessExtension     |\n| ci:file:getMimeType        | $file-\u003egetMimeType        |\n| ci:file:getRandomName      | $file-\u003egetRandomName      |\n| ci:file:move               | $file-\u003emove               |\n| ci:file:getDestination     | $file-\u003egetDestination     |\n| ci:file:hasMoved           | $file-\u003ehasMoved           |\n| ci:file:getError           | $file-\u003egetError           |\n| ci:file:getErrorString     | $file-\u003egetErrorString     |\n| ci:file:getClientMimeType  | $file-\u003egetClientMimeType  |\n| ci:file:getName            | $file-\u003egetName            |\n| ci:file:getClientName      | $file-\u003egetClientName      |\n| ci:file:getTempName        | $file-\u003egetTempName        |\n| ci:file:getExtension       | $file-\u003egetExtension       |\n| ci:file:getClientExtension | $file-\u003egetClientExtension |\n| ci:file:isValid            | $file-\u003eisValid            |\n| ci:file:store              | $file-\u003estore              |\n| ci:files:get               | $files-\u003eget               |\n| ci:files:set               | $files-\u003eset               |\n| ci:files:add               | $files-\u003eadd               |\n| ci:files:addFiles          | $files-\u003eaddFiles          |\n| ci:files:addFile           | $files-\u003eaddFile           |\n| ci:files:removeFiles       | $files-\u003eremoveFiles       |\n| ci:files:removeFile        | $files-\u003eremoveFile        |\n| ci:files:addDirectories    | $files-\u003eaddDirectories    |\n| ci:files:addDirectory      | $files-\u003eaddDirectory      |\n| ci:files:removePattern     | $files-\u003eremovePattern     |\n| ci:files:retainPattern     | $files-\u003eretainPattern     |\n| ci:files:count             | $files-\u003ecount             |\n| ci:files:getIterator       | $files-\u003egetIterator       |\n\n### Image\n\n| Snippet               | Purpose              |\n| --------------------- | -------------------- |\n| ci:image:withFile     | $image-\u003ewithFile     |\n| ci:image:getFile      | $image-\u003egetFile      |\n| ci:image:getResource  | $image-\u003egetResource  |\n| ci:image:withResource | $image-\u003ewithResource |\n| ci:image:resize       | $image-\u003eresize       |\n| ci:image:crop         | $image-\u003ecrop         |\n| ci:image:convert      | $image-\u003econvert      |\n| ci:image:rotate       | $image-\u003erotate       |\n| ci:image:flatten      | $image-\u003eflatten      |\n| ci:image:flip         | $image-\u003eflip         |\n| ci:image:text         | $image-\u003etext         |\n| ci:image:reorient     | $image-\u003ereorient     |\n| ci:image:getEXIF      | $image-\u003egetEXIF      |\n| ci:image:fit          | $image-\u003efit          |\n| ci:image:getVersion   | $image-\u003egetVersion   |\n| ci:image:save         | $image-\u003esave         |\n| ci:image:getWidth     | $image-\u003egetWidth     |\n| ci:image:getHeight    | $image-\u003egetHeight    |\n\n### Pagination\n\n| Snippet                          | Purpose                    |\n| -------------------------------- | -------------------------- |\n| ci:pagination:links              | $pager-\u003elinks              |\n| ci:pagination:simpleLinks        | $pager-\u003esimpleLinks        |\n| ci:pagination:makeLinks          | $pager-\u003emakeLinks          |\n| ci:pagination:store              | $pager-\u003estore              |\n| ci:pagination:setSegment         | $pager-\u003esetSegment         |\n| ci:pagination:setPath            | $pager-\u003esetPath            |\n| ci:pagination:getTotal           | $pager-\u003egetTotal           |\n| ci:pagination:getPageCount       | $pager-\u003egetPageCount       |\n| ci:pagination:getCurrentPage     | $pager-\u003egetCurrentPage     |\n| ci:pagination:hasMore            | $pager-\u003ehasMore            |\n| ci:pagination:getLastPage        | $pager-\u003egetLastPage        |\n| ci:pagination:getFirstPage       | $pager-\u003egetFirstPage       |\n| ci:pagination:getPageURI         | $pager-\u003egetPageURI         |\n| ci:pagination:getNextPageURI     | $pager-\u003egetNextPageURI     |\n| ci:pagination:getPreviousPageURI | $pager-\u003egetPreviousPageURI |\n| ci:pagination:getPerPage         | $pager-\u003egetPerPage         |\n| ci:pagination:getDetails         | $pager-\u003egetDetails         |\n| ci:pagination:only               | $pager-\u003eonly               |\n\n### Redirect\n\n| Snippet                 | Purpose                 |\n| ----------------------- | ----------------------- |\n| ci:redirect:to          | redirect()-\u003eto          |\n| ci:redirect:route       | redirect()-\u003eroute       |\n| ci:redirect:back        | redirect()-\u003eback        |\n| ci:redirect:withInput   | redirect()-\u003ewithInput   |\n| ci:redirect:with        | redirect()-\u003ewith        |\n| ci:redirect:withCookies | redirect()-\u003ewithCookies |\n| ci:redirect:withHeaders | redirect()-\u003ewithHeaders |\n\n### Request\n\n| Snippet                            | Purpose                          |\n| ---------------------------------- | -------------------------------- |\n| ci:request:getIPAddress            | request-\u003egetIPAddress            |\n| ci:request:isValidIP               | request-\u003eisValidIP               |\n| ci:request:getMethod               | request-\u003egetMethod               |\n| ci:request:setMethod               | request-\u003esetMethod               |\n| ci:request:withMethod              | request-\u003ewithMethod              |\n| ci:request:getUri                  | request-\u003egetUri                  |\n| ci:request:getServer               | request-\u003egetServer               |\n| ci:request:detectLocale            | request-\u003edetectLocale            |\n| ci:request:detectPath              | request-\u003edetectPath              |\n| ci:request:parseRequestURI         | request-\u003eparseRequestURI         |\n| ci:request:parseQueryString        | request-\u003eparseQueryString        |\n| ci:request:negotiate               | request-\u003enegotiate               |\n| ci:request:is                      | request-\u003eis                      |\n| ci:request:isCLI                   | request-\u003eisCLI                   |\n| ci:request:isAJAX                  | request-\u003eisAJAX                  |\n| ci:request:isSecure                | request-\u003eisSecure                |\n| ci:request:setPath                 | request-\u003esetPath                 |\n| ci:request:getPath                 | request-\u003egetPath                 |\n| ci:request:setLocale               | request-\u003esetLocale               |\n| ci:request:getLocale               | request-\u003egetLocale               |\n| ci:request:getDefaultLocale        | request-\u003egetDefaultLocale        |\n| ci:request:getVar                  | request-\u003egetVar                  |\n| ci:request:getJSON                 | request-\u003egetJSON                 |\n| ci:request:getJsonVar              | request-\u003egetJsonVar              |\n| ci:request:getRawInput             | request-\u003egetRawInput             |\n| ci:request:getRawInputVar          | request-\u003egetRawInputVar          |\n| ci:request:getGet                  | request-\u003egetGet                  |\n| ci:request:getPost                 | request-\u003egetPost                 |\n| ci:request:getPostGet              | request-\u003egetPostGet              |\n| ci:request:getGetPost              | request-\u003egetGetPost              |\n| ci:request:getCookie               | request-\u003egetCookie               |\n| ci:request:getUserAgent            | request-\u003egetUserAgent            |\n| ci:request:getOldInput             | request-\u003egetOldInput             |\n| ci:request:getFiles                | request-\u003egetFiles                |\n| ci:request:getFileMultiple         | request-\u003egetFileMultiple         |\n| ci:request:getFile                 | request-\u003egetFile                 |\n| ci:request:removeRelativeDirectory | request-\u003eremoveRelativeDirectory |\n| ci:request:getOptions              | request-\u003egetOptions              |\n| ci:request:getArgs                 | request-\u003egetArgs                 |\n| ci:request:getSegments             | request-\u003egetSegments             |\n| ci:request:getOption               | request-\u003egetOption               |\n| ci:request:getOptionString         | request-\u003egetOptionString         |\n| ci:request:setValidLocales         | request-\u003esetValidLocales         |\n\n### Response\n\n| Snippet                          | Purpose                     |\n| -------------------------------- | --------------------------- |\n| ci:response:getStatusCode        | response-\u003egetStatusCode     |\n| ci:response:setStatusCode        | response-\u003esetStatusCode     |\n| ci:response:getReason            | response-\u003egetReason         |\n| ci:response:getReasonPhrase      | response-\u003egetReasonPhrase   |\n| ci:response:setDate              | response-\u003esetDate           |\n| ci:response:setLastModified      | response-\u003esetLastModified   |\n| ci:response:setLink              | response-\u003esetLink           |\n| ci:response:setContentType       | response-\u003esetContentType    |\n| ci:response:setJSON              | response-\u003esetJSON           |\n| ci:response:getJSON              | response-\u003egetJSON           |\n| ci:response:setXML               | response-\u003esetXML            |\n| ci:response:noCache              | response-\u003enoCache           |\n| ci:response:setCache             | response-\u003esetCache          |\n| ci:response:send                 | response-\u003esend              |\n| ci:response:sendHeaders          | response-\u003esendHeaders       |\n| ci:response:sendBody             | response-\u003esendBody          |\n| ci:response:setCookie            | response-\u003esetCookie         |\n| ci:response:hasCookie            | response-\u003ehasCookie         |\n| ci:response:getCookie            | response-\u003egetCookie         |\n| ci:response:deleteCookie         | response-\u003edeleteCookie      |\n| ci:response:getCookies           | response-\u003egetCookies        |\n| ci:response:getCookieStore       | response-\u003egetCookieStore    |\n| ci:response:redirect             | response-\u003eredirect          |\n| ci:response:download             | response-\u003edownload          |\n| ci:response:getCSP               | response-\u003egetCSP            |\n| ci:response:respond              | $this-\u003erespond              |\n| ci:response:fail                 | $this-\u003efail                 |\n| ci:response:respondCreated       | $this-\u003erespondCreated       |\n| ci:response:respondDeleted       | $this-\u003erespondDeleted       |\n| ci:response:respondUpdated       | $this-\u003erespondUpdated       |\n| ci:response:respondNoContent     | $this-\u003erespondNoContent     |\n| ci:response:failUnauthorized     | $this-\u003efailUnauthorized     |\n| ci:response:failForbidden        | $this-\u003efailForbidden        |\n| ci:response:failNotFound         | $this-\u003efailNotFound         |\n| ci:response:failValidationError  | $this-\u003efailValidationError  |\n| ci:response:failValidationErrors | $this-\u003efailValidationErrors |\n| ci:response:failResourceExists   | $this-\u003efailResourceExists   |\n| ci:response:failResourceGone     | $this-\u003efailResourceGone     |\n| ci:response:failTooManyRequests  | $this-\u003efailTooManyRequests  |\n| ci:response:failServerError      | $this-\u003efailServerError      |\n| ci:response:setResponseFormat    | $this-\u003esetResponseFormat    |\n\n### Routes\n\n| Snippet                                 | Purpose                                |\n| --------------------------------------- | -------------------------------------- |\n| ci:routes:get                           | $routes-\u003eget                           |\n| ci:routes:post                          | $routes-\u003epost                          |\n| ci:routes:put                           | $routes-\u003eput                           |\n| ci:routes:delete                        | $routes-\u003edelete                        |\n| ci:routes:head                          | $routes-\u003ehead                          |\n| ci:routes:patch                         | $routes-\u003epatch                         |\n| ci:routes:options                       | $routes-\u003eoptions                       |\n| ci:routes:cli                           | $routes-\u003ecli                           |\n| ci:routes:add                           | $routes-\u003eadd                           |\n| ci:routes:view                          | $routes-\u003eview                          |\n| ci:routes:addPlaceholder                | $routes-\u003eaddPlaceholder                |\n| ci:routes:presenter                     | $routes-\u003epresenter                     |\n| ci:routes:resource                      | $routes-\u003eresource                      |\n| ci:routes:match                         | $routes-\u003ematch                         |\n| ci:routes:addRedirect                   | $routes-\u003eaddRedirect                   |\n| ci:routes:map                           | $routes-\u003emap                           |\n| ci:routes:setPrioritize                 | $routes-\u003esetPrioritize                 |\n| ci:routes:setTranslateURIDashes         | $routes-\u003esetTranslateURIDashes         |\n| ci:routes:setAutoRoute                  | $routes-\u003esetAutoRoute                  |\n| ci:routes:setDefaultNamespace           | $routes-\u003esetDefaultNamespace           |\n| ci:routes:setDefaultController          | $routes-\u003esetDefaultController          |\n| ci:routes:setDefaultMethod              | $routes-\u003esetDefaultMethod              |\n| ci:routes:environment                   | $routes-\u003eenvironment                   |\n| ci:routes:group                         | $routes-\u003egroup                         |\n| ci:routes:loadRoutes                    | $routes-\u003eloadRoutes                    |\n| ci:routes:getPlaceholders               | $routes-\u003egetPlaceholders               |\n| ci:routes:set404Override                | $routes-\u003eset404Override                |\n| ci:routes:get404Override                | $routes-\u003eget404Override                |\n| ci:routes:setDefaultConstraint          | $routes-\u003esetDefaultConstraint          |\n| ci:routes:getDefaultController          | $routes-\u003egetDefaultController          |\n| ci:routes:getDefaultMethod              | $routes-\u003egetDefaultMethod              |\n| ci:routes:getDefaultNamespace           | $routes-\u003egetDefaultNamespace           |\n| ci:routes:shouldTranslateURIDashes      | $routes-\u003eshouldTranslateURIDashes      |\n| ci:routes:shouldAutoRoute               | $routes-\u003eshouldAutoRoute               |\n| ci:routes:getRoutes                     | $routes-\u003egetRoutes                     |\n| ci:routes:getRoutesOptions              | $routes-\u003egetRoutesOptions              |\n| ci:routes:getHTTPVerb                   | $routes-\u003egetHTTPVerb                   |\n| ci:routes:setHTTPVerb                   | $routes-\u003esetHTTPVerb                   |\n| ci:routes:isRedirect                    | $routes-\u003eisRedirect                    |\n| ci:routes:getRedirectCode               | $routes-\u003egetRedirectCode               |\n| ci:routes:reverseRoute                  | $routes-\u003ereverseRoute                  |\n| ci:routes:isFiltered                    | $routes-\u003eisFiltered                    |\n| ci:routes:getFilterForRoute             | $routes-\u003egetFilterForRoute             |\n| ci:routes:getFiltersForRoute            | $routes-\u003egetFiltersForRoute            |\n| ci:routes:resetRoutes                   | $routes-\u003eresetRoutes                   |\n| ci:routes:getRegisteredControllers      | $routes-\u003egetRegisteredControllers      |\n| ci:routes:useSupportedLocalesOnly       | $routes-\u003euseSupportedLocalesOnly       |\n| ci:routes:shouldUseSupportedLocalesOnly | $routes-\u003eshouldUseSupportedLocalesOnly |\n\n### Session\n\n| Snippet                    | Purpose                   |\n| -------------------------- | ------------------------- |\n| ci:session:get             | $session-\u003eget             |\n| ci:session:set             | $session-\u003eset             |\n| ci:session:has             | $session-\u003ehas             |\n| ci:session:push            | $session-\u003epush            |\n| ci:session:remove          | $session-\u003eremove          |\n| ci:session:markAsFlashdata | $session-\u003emarkAsFlashdata |\n| ci:session:unmarkFlashdata | $session-\u003eunmarkFlashdata |\n| ci:session:getFlashKeys    | $session-\u003egetFlashKeys    |\n| ci:session:setFlashdata    | $session-\u003esetFlashdata    |\n| ci:session:getFlashdata    | $session-\u003egetFlashdata    |\n| ci:session:keepFlashdata   | $session-\u003ekeepFlashdata   |\n| ci:session:markAsTempdata  | $session-\u003emarkAsTempdata  |\n| ci:session:unmarkTempdata  | $session-\u003eunmarkTempdata  |\n| ci:session:setTempdata     | $session-\u003esetTempdata     |\n| ci:session:getTempdata     | $session-\u003egetTempdata     |\n| ci:session:removeTempdata  | $session-\u003eremoveTempdata  |\n| ci:session:getTempKeys     | $session-\u003egetTempKeys     |\n| ci:session:setSaveHandler  | $session-\u003esetSaveHandler  |\n| ci:session:startSession    | $session-\u003estartSession    |\n| ci:session:setCookie       | $session-\u003esetCookie       |\n| ci:session:start           | $session-\u003estart           |\n| ci:session:stop            | $session-\u003estop            |\n| ci:session:regenerate      | $session-\u003eregenerate      |\n| ci:session:destroy         | $session-\u003edestroy         |\n\n### Time\n\n| Snippet                       | Purpose                      |\n| ----------------------------- | ---------------------------- |\n| ci:time:now                   | Time::now                    |\n| ci:time:parse                 | Time::parse                  |\n| ci:time:today                 | Time::today                  |\n| ci:time:yesterday             | Time::yesterday              |\n| ci:time:tomorrow              | Time::tomorrow               |\n| ci:time:createFromDate        | Time::createFromDate         |\n| ci:time:createFromTime        | Time::createFromTime         |\n| ci:time:create                | Time::create                 |\n| ci:time:createFromFormat      | Time::createFromFormat       |\n| ci:time:createFromTimestamp   | Time::createFromTimestamp    |\n| ci:time:createFromInstance    | Time::createFromInstance     |\n| ci:time:instance              | Time::instance               |\n| ci:time:setTestNow            | Time::setTestNow             |\n| ci:time:hasTestNow            | Time::hasTestNow             |\n| ci:time:toDateTime            | $time-\u003etoDateTime            |\n| ci:time:getYear               | $time-\u003egetYear               |\n| ci:time:getMonth              | $time-\u003egetMonth              |\n| ci:time:getDay                | $time-\u003egetDay                |\n| ci:time:getHour               | $time-\u003egetHour               |\n| ci:time:getMinute             | $time-\u003egetMinute             |\n| ci:time:getSecond             | $time-\u003egetSecond             |\n| ci:time:getDayOfWeek          | $time-\u003egetDayOfWeek          |\n| ci:time:getDayOfYear          | $time-\u003egetDayOfYear          |\n| ci:time:getWeekOfMonth        | $time-\u003egetWeekOfMonth        |\n| ci:time:getWeekOfYear         | $time-\u003egetWeekOfYear         |\n| ci:time:getAge                | $time-\u003egetAge                |\n| ci:time:getQuarter            | $time-\u003egetQuarter            |\n| ci:time:getDst                | $time-\u003egetDst                |\n| ci:time:getLocal              | $time-\u003egetLocal              |\n| ci:time:getUtc                | $time-\u003egetUtc                |\n| ci:time:getTimezoneName       | $time-\u003egetTimezoneName       |\n| ci:time:setYear               | $time-\u003esetYear               |\n| ci:time:setMonth              | $time-\u003esetMonth              |\n| ci:time:setDay                | $time-\u003esetDay                |\n| ci:time:setHour               | $time-\u003esetHour               |\n| ci:time:setMinute             | $time-\u003esetMinute             |\n| ci:time:setSecond             | $time-\u003esetSecond             |\n| ci:time:setTimezone           | $time-\u003esetTimezone           |\n| ci:time:setTimestamp          | $time-\u003esetTimestamp          |\n| ci:time:addSeconds            | $time-\u003eaddSeconds            |\n| ci:time:addMinutes            | $time-\u003eaddMinutes            |\n| ci:time:addHours              | $time-\u003eaddHours              |\n| ci:time:addDays               | $time-\u003eaddDays               |\n| ci:time:addMonths             | $time-\u003eaddMonths             |\n| ci:time:addYears              | $time-\u003eaddYears              |\n| ci:time:subSeconds            | $time-\u003esubSeconds            |\n| ci:time:subMinutes            | $time-\u003esubMinutes            |\n| ci:time:subHours              | $time-\u003esubHours              |\n| ci:time:subDays               | $time-\u003esubDays               |\n| ci:time:subMonths             | $time-\u003esubMonths             |\n| ci:time:subYears              | $time-\u003esubYears              |\n| ci:time:toDateTimeString      | $time-\u003etoDateTimeString      |\n| ci:time:toDateString          | $time-\u003etoDateString          |\n| ci:time:toFormattedDateString | $time-\u003etoFormattedDateString |\n| ci:time:toTimeString          | $time-\u003etoTimeString          |\n| ci:time:toLocalizedString     | $time-\u003etoLocalizedString     |\n| ci:time:equals                | $time-\u003eequals                |\n| ci:time:sameAs                | $time-\u003esameAs                |\n| ci:time:isBefore              | $time-\u003eisBefore              |\n| ci:time:isAfter               | $time-\u003eisAfter               |\n| ci:time:humanize              | $time-\u003ehumanize              |\n| ci:time:difference            | $time-\u003edifference            |\n| ci:time:getUTCObject          | $time-\u003egetUTCObject          |\n| ci:time:getCalendar           | $time-\u003egetCalendar           |\n\n### Validation\n\n| Snippet                       | Purpose                    |\n| ----------------------------- | -------------------------- |\n| ci:validation:setRule         | $validation-\u003esetRule       |\n| ci:validation:setRules        | $validation-\u003esetRules      |\n| ci:validation:withRequest     | $validation-\u003ewithRequest   |\n| ci:validation:run             | $validation-\u003erun           |\n| ci:validation:reset           | $validation-\u003ereset         |\n| ci:validation:check           | $validation-\u003echeck         |\n| ci:validation:getRuleGroup    | $validation-\u003egetRuleGroup  |\n| ci:validation:setRuleGroup    | $validation-\u003esetRuleGroup  |\n| ci:validation:getError        | $validation-\u003egetError      |\n| ci:validation:hasError        | $validation-\u003ehasError      |\n| ci:validation:listErrors      | $validation-\u003elistErrors    |\n| ci:validation:showError       | $validation-\u003eshowError     |\n| ci:validation:getErrors       | $validation-\u003egetErrors     |\n| ci:validation:setError        | $validation-\u003esetError      |\n| ci:validation:loadRuleGroup   | $validation-\u003eloadRuleGroup |\n| ci:validation:getValidated    | $validation-\u003egetValidated  |\n| ci:rule:alpha                 | alpha                      |\n| ci:rule:alpha_space           | alpha_space                |\n| ci:rule:alpha_dash            | alpha_dash                 |\n| ci:rule:alpha_numeric         | alpha_numeric              |\n| ci:rule:alpha_numeric_space   | alpha_numeric_space        |\n| ci:rule:alpha_numeric_punct   | alpha_numeric_punct        |\n| ci:rule:decimal               | decimal                    |\n| ci:rule:differs               | differs                    |\n| ci:rule:exact_length          | exact_length               |\n| ci:rule:greater_than          | greater_than               |\n| ci:rule:greater_than_equal_to | greater_than_equal_to      |\n| ci:rule:hex                   | hex                        |\n| ci:rule:if_exist              | if_exist                   |\n| ci:rule:in_list               | in_list                    |\n| ci:rule:integer               | integer                    |\n| ci:rule:is_natural            | is_natural                 |\n| ci:rule:is_natural_no_zero    | is_natural_no_zero         |\n| ci:rule:is_not_unique         | is_not_unique              |\n| ci:rule:is_unique             | is_unique                  |\n| ci:rule:less_than             | less_than                  |\n| ci:rule:less_than_equal_to    | less_than_equal_to         |\n| ci:rule:matches               | matches                    |\n| ci:rule:max_length            | max_length                 |\n| ci:rule:min_length            | min_length                 |\n| ci:rule:not_in_list           | not_in_list                |\n| ci:rule:numeric               | numeric                    |\n| ci:rule:regex_match           | regex_match                |\n| ci:rule:permit_empty          | permit_empty               |\n| ci:rule:required              | required                   |\n| ci:rule:required_with         | required_with              |\n| ci:rule:required_without      | required_without           |\n| ci:rule:string                | string                     |\n| ci:rule:timezone              | timezone                   |\n| ci:rule:valid_base64          | valid_base64               |\n| ci:rule:valid_json            | valid_json                 |\n| ci:rule:valid_email           | valid_email                |\n| ci:rule:valid_emails          | valid_emails               |\n| ci:rule:valid_ip              | valid_ip                   |\n| ci:rule:valid_url             | valid_url                  |\n| ci:rule:valid_url_strict      | valid_url_strict           |\n| ci:rule:valid_date            | valid_date                 |\n| ci:rule:valid_cc_number       | valid_cc_number            |\n| ci:rule:uploaded              | uploaded                   |\n| ci:rule:max_size              | max_size                   |\n| ci:rule:max_dims              | max_dims                   |\n| ci:rule:mime_in               | mime_in                    |\n| ci:rule:ext_in                | ext_in                     |\n| ci:rule:is_image              | is_image                   |\n\n### View\n\n| Snippet                    | Purpose                   |\n| -------------------------- | ------------------------- |\n| ci:view:render             | $view-\u003erender             |\n| ci:view:renderString       | $view-\u003erenderString       |\n| ci:view:excerpt            | $view-\u003eexcerpt            |\n| ci:view:setData            | $view-\u003esetData            |\n| ci:view:setVar             | $view-\u003esetVar             |\n| ci:view:resetData          | $view-\u003eresetData          |\n| ci:view:getData            | $view-\u003egetData            |\n| ci:view:extend             | $this-\u003eextend             |\n| ci:view:section            | $this-\u003esection            |\n| ci:view:endSection         | $this-\u003eendSection         |\n| ci:view:renderSection      | $this-\u003erenderSection      |\n| ci:view:include            | $this-\u003einclude            |\n| ci:view:getPerformanceData | $view-\u003egetPerformanceData |\n\n## Contributing\n\nCodeIgniter 4 Snippets is open-source and welcomes community contributions:\n\n1. Fork the [GitHub repository](https://github.com/ManuelGil/vscode-codeigniter4-snippets).\n2. Create a new branch:\n\n   ```bash\n   git checkout -b feature/your-feature\n   ```\n\n3. Make your changes, commit them, and push to your fork.\n4. Submit a Pull Request against the `main` branch.\n\nBefore contributing, please review the [Contribution Guidelines](https://github.com/ManuelGil/vscode-codeigniter4-snippets/blob/main/CONTRIBUTING.md) for coding standards, testing, and commit message conventions. Open an Issue if you find a bug or want to request a new feature.\n\n## Code of Conduct\n\nWe are committed to providing a friendly, safe, and welcoming environment for all, regardless of gender, sexual orientation, disability, ethnicity, religion, or other personal characteristic. Please review our [Code of Conduct](https://github.com/ManuelGil/vscode-codeigniter4-snippets/blob/main/CODE_OF_CONDUCT.md) before participating in our community.\n\n## Changelog\n\nFor a complete list of changes, see the [CHANGELOG.md](https://github.com/ManuelGil/vscode-codeigniter4-snippets/blob/main/CHANGELOG.md).\n\n## Authors\n\n- **Manuel Gil** - _Owner_ - [@ManuelGil](https://github.com/ManuelGil)\n\nSee also the list of [contributors](https://github.com/ManuelGil/vscode-codeigniter4-snippets/contributors) who participated in this project.\n\n## Follow Me\n\n- **GitHub**: [![GitHub followers](https://img.shields.io/github/followers/ManuelGil?style=for-the-badge\\\u0026logo=github)](https://github.com/ManuelGil)\n- **X (formerly Twitter)**: [![X Follow](https://img.shields.io/twitter/follow/imgildev?style=for-the-badge\\\u0026logo=x)](https://twitter.com/imgildev)\n\n## Other Extensions\n\n- **[Auto Barrel](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-auto-barrel)**\n  Automatically generates and maintains barrel (`index.ts`) files for your TypeScript projects.\n\n- **[Angular File Generator](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-angular-generator)**\n  Generates boilerplate and navigates your Angular (9→20+) project from within the editor, with commands for components, services, directives, modules, pipes, guards, reactive snippets, and JSON2TS transformations.\n\n- **[NestJS File Generator](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-nestjs-generator)**\n  Simplifies creation of controllers, services, modules, and more for NestJS projects, with custom commands and Swagger snippets.\n\n- **[NestJS Snippets](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-nestjs-snippets-extension)**\n  Ready-to-use code patterns for creating controllers, services, modules, DTOs, filters, interceptors, and more in NestJS.\n\n- **[T3 Stack / NextJS / ReactJS File Generator](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-nextjs-generator)**\n  Automates file creation (components, pages, hooks, API routes, etc.) in T3 Stack (Next.js, React) projects and can start your dev server from VSCode.\n\n- **[Drizzle ORM Snippets](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-drizzle-snippets)**\n  Collection of code snippets to speed up Drizzle ORM usage, defines schemas, migrations, and common database operations in TypeScript/JavaScript.\n\n- **[CodeIgniter 4 Spark](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-spark)**\n  Scaffolds controllers, models, migrations, libraries, and CLI commands in CodeIgniter 4 projects using Spark, directly from the editor.\n\n- **[CodeIgniter 4 Snippets](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets)**\n  Snippets for accelerating development with CodeIgniter 4, including controllers, models, validations, and more.\n\n- **[CodeIgniter 4 Shield Snippets](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-codeigniter4-snippets)**\n  Snippets tailored to CodeIgniter 4 Shield for faster authentication and security-related code.\n\n- **[Mustache Template Engine - Snippets \u0026 Autocomplete](https://marketplace.visualstudio.com/items?itemName=imgildev.vscode-mustache-snippets)**\n  Snippets and autocomplete support for Mustache templates, making HTML templating faster and more reliable.\n\n## Recommended Browser Extension\n\nFor developers who work with `.vsix` files for offline installations or distribution, the complementary [**One-Click VSIX**](https://chromewebstore.google.com/detail/imojppdbcecfpeafjagncfplelddhigc?utm_source=item-share-cb) extension is recommended, available for both Chrome and Firefox.\n\n\u003e **One-Click VSIX** integrates a direct \"Download Extension\" button into each VSCode Marketplace page, ensuring the file is saved with the `.vsix` extension, even if the server provides a `.zip` archive. This simplifies the process of installing or sharing extensions offline by eliminating the need for manual file renaming.\n\n- [Get One-Click VSIX for Chrome \u0026rarr;](https://chromewebstore.google.com/detail/imojppdbcecfpeafjagncfplelddhigc?utm_source=item-share-cb)\n- [Get One-Click VSIX for Firefox \u0026rarr;](https://addons.mozilla.org/es-ES/firefox/addon/one-click-vsix/)\n\n## License\n\nThis project is licensed under the **MIT License**. See the [LICENSE](https://github.com/ManuelGil/vscode-codeigniter4-snippets/blob/main/LICENSE) file for details.\n","funding_links":["https://github.com/sponsors/ManuelGil","https://ko-fi.com/ManuelGil","https://paypal.me/ManuelFGil","https://www.buymeacoffee.com/ManuelGil"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuelgil%2Fvscode-codeigniter4-snippets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanuelgil%2Fvscode-codeigniter4-snippets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuelgil%2Fvscode-codeigniter4-snippets/lists"}