Skip to content

Instantly share code, notes, and snippets.

View gnugat's full-sized avatar
💭
Test, Code, Refactor, Repeat!

Loïc Faugeron gnugat

💭
Test, Code, Refactor, Repeat!
View GitHub Profile
@gnugat
gnugat / alleged-claude-3.5-sonnet-artifact-system-prompt-2024-06-21.xml
Created August 9, 2024 12:17
Alleged- Caude 3.5 sonnet "Artifact" system prompt (2024-06-21)
<artifacts_info>
The assistant can create and reference artifacts during conversations. Artifacts are for substantial, self-contained content that users might modify or reuse, displayed in a separate UI window for clarity.
# Good artifacts are...
- Substantial content (>15 lines)
- Content that the user is likely to modify, iterate on, or take ownership of
- Self-contained, complex content that can be understood on its own, without context from the conversation
- Content intended for eventual use outside the conversation (e.g., reports, emails, presentations)
- Content likely to be referenced or reused multiple times
@gnugat
gnugat / command_with_defaults.php
Created September 27, 2015 15:20
An example of a Command (from CommandBus), with default values
<?php
use Assert\Assertion;
class RegisterNewMember
{
public $email;
public $subscribeToNewsletter = true;
public function __construct($email, $subscribeToNewsletter = null)
<?php
// File: app/config/importer.php
use Symfony\Component\Finder\Finder;
$finder = new Finder();
$files = $finder->files()->name('*.yml')->in(__DIR__.'/services')->in(__DIR__.'/vendors');
foreach ($files as $file) {
$loader->import($file->getRealpath());
}
@gnugat
gnugat / StackRollback.php
Last active May 12, 2017 09:24
A Middleware preventing Doctrine DBAL to change the database, useful for tests
<?php
namespace Gnugat\StackRollback;
use Doctrine\DBAL\Connection;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\HttpKernelInterface;
/**
* Example:
@gnugat
gnugat / NanoNomoSpaco.php
Last active August 29, 2015 14:11
Nano Nomo Spaco
<?php
if (!isset($argv[1])) {
die('Usage: '.$argv[0].' <path>');
}
$path = $argv[1];
$fqcns = array();
$allFiles = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path));
@gnugat
gnugat / HttpHeader.php
Last active August 29, 2015 14:08
gnugat/ripozi - HttpHeader
<?php
namespace Gnugat\Ripozi\Service;
class HttpHeader
{
const AUTHORIZATION_HEADER = 'Authorization';
const CONTENT_TYPE = 'Content-Type';
const FORM_CONTENT_TYPE = 'application/x-www-form-urlencoded';
@gnugat
gnugat / CommandTestApplication.php
Last active August 29, 2015 14:07
gnugat/ripozi - CommandTestApplication
<?php
namespace Gnugat\Ripozi\Test;
use Symfony\Bundle\FrameworkBundle\Console\Application;
use Symfony\Component\Console\Input\ArrayInput;
use Symfony\Component\Console\Output\NullOutput;
/**
* Assumes that the application kernel is named AppKernel and has been loaded
@gnugat
gnugat / SubmitJsonListener.php
Created October 3, 2014 10:05
gnugat/ripozi - SubmitJsonListener
<?php
namespace Gnugat\Ripozi\EventListener;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
use Symfony\Component\HttpKernel\HttpKernelInterface;
/**
@gnugat
gnugat / ApiTestClient.php
Last active August 29, 2015 14:07
gnugat/ripozi - ApiTestClient
<?php
namespace Gnugat\Ripozi\Test;
/**
* Assumes that the application kernel is named AppKernel and has been loaded
*/
class ApiTestClient
{
/**
@gnugat
gnugat / README.md
Last active August 29, 2015 14:01
Redaktilo in a tweet

Redaktilo in a tweet

An extreme minification of Redaktilo.

Usage:

<?php
require_once __DIR__.'/r.php';