Aller au contenu

Card and item editing

Version française
Back to index


Accessing the card editor

  1. From the language list → ✏️ "Éditer" button on the desired language
  2. Or directly: /admin/languages/[id]/cards

The editor displays all cards for the language (words and phrases), with their items.


Card list view

For each card: - Card number - Type: word (word) or phrase (phrase) - Theme (for words) - Number of items - Audio progress: how many items have audio


Editing an item's text

Via the admin interface

  1. Click on a card to open it
  2. You see all the card's items (list of positions)
  3. Click on an item to enter edit mode
  4. Modify:
  5. texte_original: the text in the African language
  6. traduction: the French translation
  7. Click "Sauvegarder"

Via PostgreSQL directly

UPDATE items
SET
  original_text = 'New text in the language',
  translation   = 'New translation'
WHERE id = 'item-uuid';

Editing an item's audio URL

If you want to point an item to an existing audio file in MinIO:

Via the admin interface

In the item view → "URL audio" field → edit → save.

Via PostgreSQL

UPDATE items
SET audio_url = 'https://[minio-public-url]/audios/[file-path].mp3'
WHERE id = 'item-uuid';

Audio URL format:

https://[MINIO_PUBLIC_URL]/[MINIO_BUCKET]/[language_code]/[card_id]/[position].mp3

Example:

https://racines-s3.id2real.net/audios/pul/carte-123/pos-1.mp3

⚠️ The URL must be publicly accessible (MinIO bucket in public-read mode).


Adding a new card

Adding new cards is not done from the editor. To add cards to an existing language, use the Excel import from the language creation page.

→ See Excel Import


Deleting an item or a card

⚠️ Deleting a card is irreversible and cascades to its items and statistics.

Via the admin interface

"Supprimer" button on the card or item → confirmation required.

Via PostgreSQL

-- Delete an item
DELETE FROM items WHERE id = 'item-uuid';

-- Delete a card (automatically cascades to items)
DELETE FROM cards WHERE id = 'card-uuid';

Note: Deleting a card via PostgreSQL cascades to items, but does not delete audio files in MinIO. Clean up the bucket manually if needed.


Common use cases

Fixing a typo in a word

Admin UI → Card → Item → Edit → Fix → Save.

Replacing a poor-quality audio

Admin UI or SQL → Modify audio_url of the item to point to the new file in MinIO. Or: ask the speaker to re-record via their interface (see Speaker management).

Adding a missing theme

SQL → UPDATE cards SET theme = 'New theme' WHERE id = 'uuid';


Next steps