16 Commits
Author SHA1 Message Date
cedric 63c84529ac Ajoute le drapeau de Gwadlup (GONG) 2026-07-27 18:15:07 +04:00
sucupiraandClaude Opus 4.8 47f8dc0da2 Archives dans le menu principal + vitrine accueil ; corrige liens footer
- « Archives » ajouté au menu principal (nav) et vitrine dédiée « Les documents
  originaux » (3 couvertures de Gong-Information) sur la page d'accueil.
- Corrige les liens « Nous suivre » : Bokantaj → Bokante (https://bokante.o-k-i.net),
  Gade → https://gade.o-k-i.net/.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 00:54:29 -04:00
sucupiraandClaude Opus 4.8 caf9e3377e Archives : liens vers les fonds institutionnels (INHA, Pandor, Archives nationales)
Après recherche, aucun autre document du GONG n'est disponible en réutilisation
libre (les autres exemplaires sont des doublons ou sous restriction juridique —
l'affiche « Briser les urnes colonialistes » aux Archives nationales 5W/728 est
non communicable). Ajout de liens sortants vers ces fonds (INHA/AGORHA, SISMO,
Pandor MSH Dijon, article de Sylvain Mary) pour aider la recherche, sans hébergement.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 00:36:52 -04:00
sucupiraandClaude Opus 4.8 8ba1c2757a Récupère les 3 numéros de Gong-Information depuis l'API Strapi
Les documents réels du GONG (journal Gong-Information) vivaient uniquement sur
l'API Strapi en ligne (api.gong.gp), pas dans le dépôt. Ils sont maintenant
récupérés et intégrés en dur (le back-office Strapi peut être définitivement retiré) :

- n° 16 (Mai-Juin 1966), n° spécial (Janv-Fév 1967), n° 19 (Mars-Avril-Mai 1967).
- Transcription intégrale (contenu first-party) + couverture optimisée WebP (~40 Ko).
- Scans PDF recompressés via Ghostscript (176 Mo → 28 Mo, 150 dpi lisibles).
- Nouvelle section /archives (index + fiche par numéro), schema Article/CreativeWork.
- Liens depuis nav, footer, accueil, publications ; ajout au sitemap ; PWA globIgnores.

npm run check : 0/0 · build : 32 pages.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 00:31:39 -04:00
sucupiraandClaude Opus 4.8 9669edf8bc Ajoute deux visuels libres de droits (Delgrès, drapeau UPLG)
- Proclamation de Louis Delgrès « À l'univers entier » (1802), CC BY-SA 3.0,
  optimisée WebP 198 Ko → page Histoire (précurseurs), avec crédit.
- Drapeau UPLG (domaine public) → page Héritage (carte UPLG).
- Section « Crédits iconographiques » ajoutée à la page Sources.
Portraits de Sartre/Césaire écartés (licences non libres).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 00:12:42 -04:00
sucupiraandClaude Opus 4.8 cd9b9b093c Refonte complète en SvelteKit (méthode OKI, AI-Overview ready)
Reconstruit le site statique mono-page (Bulma + htmx + Strapi) en SvelteKit 2 +
Svelte 5 (runes) + TypeScript, 100 % statique (adapter-static), auto-hébergé.

- Contenu enrichi à partir du dossier documentaire sourcé : 28 pages (histoire,
  Mé 67, procès 1968, 9 fiches militants, idéologie, héritage, publications,
  charte, orientation, sources, FAQ, actualités, contact, mentions légales).
- Souveraineté : retrait de Bulma/htmx/mustache/ionicons/Plausible/Google Fonts
  et de l'API Strapi. Polices Archivo/Inter et sprite SVG auto-hébergés (zéro emoji).
- Identité GONG (drapeau vert/blanc/rouge), thème sombre par défaut + clair AA,
  cadences motion gwoka, KineticText, timeline, 404 kréyòl, PWA hors-ligne.
- SEO/AI-Overview : HTML sémantique, JSON-LD (Organization, Person, Event,
  FAQPage, Article...), hreflang, sitemap dynamique, robots/humans.txt.
- Sécurité : CSP hachée + en-têtes (.htaccess o2switch + _headers Cloudflare), HSTS.
- Actualités éditées via Sveltia CMS (git-based) ; Strapi retiré.

npm run build : vert · npm run check : 0 erreur / 0 warning · JS 97 Ko gzip.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 23:57:37 -04:00
cedric b89c1a80b7 typo 2026-02-26 12:45:06 +01:00
cedric 988980c070 change cdn links 2025-03-15 13:17:12 +04:00
cedric 548b4f5ad6 Change license in legal information 2024-11-27 16:30:48 +04:00
cedric 5896854bbf Change license to AGPL-3.0 2024-11-15 17:35:16 +04:00
cedric ca206fe60c Move contact icons 2024-08-04 00:33:19 +02:00
cedric 5ebf56e80f Add legal disclaimer 2024-08-03 14:39:21 +02:00
cedric ccb047a889 Change icons size 2024-06-09 12:32:48 +04:00
cedric 44442b7e5f Add fediverse links to footer 2024-06-09 10:00:52 +04:00
cedric cf0cd50916 Fix <h1> & add title aatribute to <a> 2024-04-02 12:56:00 -04:00
cedric a67eca26c2 Add Plausible 2024-04-02 12:45:21 -04:00
121 changed files with 15947 additions and 1118 deletions
+12
View File
@@ -67,3 +67,15 @@ $RECYCLE.BIN/
# Windows shortcuts
*.lnk
# ---> SvelteKit
node_modules/
/build/
/.svelte-kit/
/package/
.env
.env.*
!.env.example
vite.config.js.timestamp-*
vite.config.ts.timestamp-*
dev-dist/
+68
View File
@@ -0,0 +1,68 @@
# Déploiement — gong.gp (SvelteKit statique)
Site **100 % statique** (SvelteKit + `adapter-static`, tout pré-rendu). Aucun serveur Node
n'est requis en production. Doctrine : **souveraineté** — zéro service tiers, tout auto-hébergé.
## Build
```bash
npm install
npm run build # → dossier build/
npm run preview # prévisualisation locale
```
Le dossier `build/` contient le site complet (HTML pré-rendu, `_app/`, `fonts/`, `images/`,
`sitemap.xml`, `sw.js`, `manifest.webmanifest`, `.htaccess`, `_headers`, `404.html`).
## Hébergement
### Option A — o2switch / Apache (mutualisé)
Copier le contenu de `build/` à la racine web. Le `.htaccess` fourni gère : HTTPS forcé,
en-têtes de sécurité, cache immuable, `ErrorDocument 404 /404.html`. Vérifier que
`mod_headers`, `mod_rewrite`, `mod_expires`, `mod_deflate` sont actifs.
### Option B — Cloudflare Pages
Build command : `npm run build` · Output directory : `build`. Le fichier `_headers` applique
les en-têtes de sécurité et le CSP d'en-tête.
Dans les deux cas, le CSP `script-src`/`style-src` est porté par la balise `<meta>` **hachée**
générée par SvelteKit (`kit.csp`) ; les `_headers`/`.htaccess` n'ajoutent que les directives
d'en-tête (`frame-ancestors`, HSTS…).
## Administration des actualités — Sveltia CMS
L'admin est servie à `/admin/` (bundle Sveltia **auto-hébergé**, `static/admin/sveltia-cms.js`).
Elle édite les fichiers `content/actualites/*.md` directement dans le dépôt Git (backend Gitea).
**Configuration unique (à faire côté forge Gitea `labola.o-k-i.net`) :**
1. Créer une application OAuth2 : *Paramètres → Applications → Nouvelle application OAuth2*.
- URL de redirection : `https://gong.gp/admin/`
2. Reporter le *Client ID* dans `static/admin/config.yml``backend.app_id`.
3. Vérifier `backend.branch` = branche déployée en production.
Chaque publication depuis l'admin crée un commit ; un nouveau build/déploiement régénère le site.
Le bundle Sveltia a été vendorisé depuis le paquet npm `@sveltia/cms` (mise à jour : recopier
`node_modules/@sveltia/cms/dist/sveltia-cms.js` dans `static/admin/`).
## Retrait de Strapi (api.gong.gp)
Le back-office Strapi (serveur Node + SQLite) **n'est plus utilisé** : les actualités passent par
Sveltia (git-based) et le contenu historique est figé dans le dépôt (`src/lib/data/gong.ts`).
Le dépôt `api.gong.gp` peut être archivé. Les éventuels articles Strapi existants sont à
ré-exporter manuellement en `content/actualites/*.md` (front-matter : `titre`, `date`, `chapeau`,
`couverture`, `couvertureAlt`, `top` + corps markdown).
## Push sur la forge (labola.o-k-i.net)
Voir le mémo `GITEA.md` de l'écosystème OKI. En résumé :
```bash
git push origin svelte # branche de travail
# après validation, fusionner dans la branche de production
```
## Vérifications avant mise en ligne (DoD)
- `npm run build && npm run check` : 0 erreur, 0 warning.
- Aucun domaine tiers dans `build/` (`grep -rE 'cdnjs|jsdelivr|plausible|googleapis|api.gong'`).
- `sitemap.xml` et `robots.txt` accessibles ; JSON-LD présents (Rich Results Test).
- Lighthouse mobile ≥ 90/95/95/95.
+657 -5
View File
@@ -1,9 +1,661 @@
MIT License
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
Copyright (c) 2024 OKI
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
Preamble
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
The GNU Affero General Public License is a free, copyleft license for
software and other kinds of works, specifically designed to ensure
cooperation with the community in the case of network server software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
our General Public Licenses are intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
Developers that use our General Public Licenses protect your rights
with two steps: (1) assert copyright on the software, and (2) offer
you this License which gives you legal permission to copy, distribute
and/or modify the software.
A secondary benefit of defending all users' freedom is that
improvements made in alternate versions of the program, if they
receive widespread use, become available for other developers to
incorporate. Many developers of free software are heartened and
encouraged by the resulting cooperation. However, in the case of
software used on network servers, this result may fail to come about.
The GNU General Public License permits making a modified version and
letting the public access it on a server without ever releasing its
source code to the public.
The GNU Affero General Public License is designed specifically to
ensure that, in such cases, the modified source code becomes available
to the community. It requires the operator of a network server to
provide the source code of the modified version running there to the
users of that server. Therefore, public use of a modified version, on
a publicly accessible server, gives the public access to the source
code of the modified version.
An older license, called the Affero General Public License and
published by Affero, was designed to accomplish similar goals. This is
a different license, not a version of the Affero GPL, but Affero has
released a new version of the Affero GPL which permits relicensing under
this license.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU Affero General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the
Program, your modified version must prominently offer all users
interacting with it remotely through a computer network (if your version
supports such interaction) an opportunity to receive the Corresponding
Source of your version by providing access to the Corresponding Source
from a network server at no charge, through some standard or customary
means of facilitating copying of software. This Corresponding Source
shall include the Corresponding Source for any work covered by version 3
of the GNU General Public License that is incorporated pursuant to the
following paragraph.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the work with which it is combined will remain governed by version
3 of the GNU General Public License.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU Affero General Public License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU Affero General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU Affero General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU Affero General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If your software can interact with users remotely through a computer
network, you should also make sure that it provides a way for users to
get its source. For example, if your program is a web application, its
interface could display a "Source" link that leads users to an archive
of the code. There are many ways you could offer source, and different
solutions will be better for different programs; see section 13 for the
specific requirements.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU AGPL, see
<http://www.gnu.org/licenses/>.
+38 -1
View File
@@ -1,3 +1,40 @@
# gong.gp
Groupe d'Organisation Nationale de la Guadeloupe
**GONG — Groupe d'Organisation Nationale de la Guadeloupe** (1963-1968).
Site documentaire sourcé sur le mouvement indépendantiste guadeloupéen : histoire, Mé 67,
procès de 1968, militants, idéologie, héritage. Reconstruit en **SvelteKit 2 + Svelte 5 (runes)
+ TypeScript**, 100 % statique et auto-hébergé (souveraineté numérique, zéro service tiers).
## Stack
- SvelteKit 2 · Svelte 5 (runes) · TypeScript strict · `@sveltejs/adapter-static` (prerender intégral)
- Polices Archivo/Inter auto-hébergées · sprite SVG maison (zéro emoji)
- PWA légère (`vite-plugin-pwa`) · CSP hachée · en-têtes de sécurité (`.htaccess` + `_headers`)
- SEO / AI-Overview : HTML sémantique, JSON-LD (Organization, Person, Event, FAQPage, Article…),
hreflang, sitemap dynamique
- Actualités éditées via **Sveltia CMS** (git-based, `content/actualites/*.md`)
## Développement
```bash
npm install
npm run dev # serveur de dev
npm run check # vérification TypeScript / Svelte
npm run build # build statique → build/
npm run preview # prévisualisation du build
```
## Contenu
- `src/lib/data/gong.ts` — dossier documentaire sourcé (figé).
- `content/documents/*.md` — charte 1963, orientation & stratégie, mentions légales.
- `content/actualites/*.md` — actualités (éditées via `/admin`).
## Déploiement
Voir [`DEPLOIEMENT.md`](./DEPLOIEMENT.md).
## Licence
AGPL-3.0. En hommage à Pierre Sainton (1924-2018) et à toutes les victimes de Mé 67.
@@ -0,0 +1,20 @@
---
titre: "Mé 67 : se souvenir, pour ne pas oublier"
date: "2026-05-26"
chapeau: "Chaque 26 mai, la Guadeloupe se souvient des tueries de mai 1967. Retour sur une mémoire longtemps occultée."
couverture: ""
couvertureAlt: "Commémoration des événements de mai 1967 en Guadeloupe"
top: "true"
---
Le **26 mai 1967**, une grève des ouvriers du bâtiment pour une augmentation de salaire de 2,5 % dégénère à Pointe-à-Pitre. Les forces de l'ordre tirent à balles réelles sur les manifestants. **Jacques Nestor**, militant du GONG âgé de 26 ans, est la première victime, abattu vers 15h30 sur la place de la Victoire.
Les jours suivants, la répression se généralise. Le bilan officiel fait état de **7 à 8 morts**. Les historiens estiment le nombre réel de victimes — morts, blessés et disparus — entre **80 et 200**.
## Une vérité longtemps enfouie
Pendant des décennies, ces événements sont restés dans l'ombre. Ce n'est qu'en **avril 2016** que le rapport du commissaire Gévaudan, rédigé en avril 1967, a été déclassifié. Ce document démontrait pourtant, dès l'époque, l'absence de responsabilité directe du GONG dans le déclenchement des émeutes.
Aujourd'hui, le **26 mai** est devenu une date de commémoration. La stèle de Delgrès au Matouba reste un lieu de mémoire lié à l'histoire du mouvement.
> « Les générations futures se doivent de continuer le combat [...] de telle sorte qu'un jour notre pays et les Guadeloupéens soient libérés des ventouses tentaculaires et séculaires qu'est le colonialisme français. » — Serge Glaude, co-fondateur du GONG
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
<p>GONG INFORMATION</p><p>JOURNAL DU PATRIOTE GUADELOUPÉEN</p><p>Un peuple qui décide de se gouverner est un peuple qui entreprend de se critiquer et de sorganiser.</p><p>EDITORIAL</p><p>LA LUTTE POUR NOTRE INDÉPENDANCE NATIONALE SE DÉVELOPPE AVEC IMPÉTUOSITÉ</p><p>La dégradation de la situation politico-sociale, laction révolutionnaire développée par le GONG au cours de 1966 et au début de 1967, ont sensiblement élevé le niveau de la lutte du peuple pour lindépendance nationale.</p><p>Limpérialisme français, aidé de ses valets, les révisionnistes et les réactionnaires ont essayé toutes les méthodes pour endiguer le flot impétueux de la lutte&nbsp;; ils ont cru trouvé une occasion inespérée dans le cyclone Ines qui au mois de Septembre 1966, dévasta complètement notre pays.</p><p>En associant le chantage, la menace, ils espéraient que notre peuple viendrait se prosterner devant les urnes colonialistes le 5 mars, au prix de quelques billets de 10 Frs.</p><p>Mais ils se sont grossièrement trompés notre peuple leur a infligé une cuisante défaite&nbsp;:</p><p>À lintimidation constituées par lenvoi des «&nbsp;troupes dintervention&nbsp;» colonialistes françaises, au chantage exercé par les services de la préfecture, à la corruption organisée par les laquais de limpérialisme, aux vaines et éternelles promesses faites par les révisionnistes du P.C.G, notre peuple, dans sa grande majorité, sous la direction politique de son avant-garde LE GONG a répondu dignement et fermement par lAbstention Révolutionnaire.</p><p><br>- 53&nbsp;% de la population ont ainsi exprimé le profond mépris quils avaient pour ces mascarades, ces courses aux miettes, que constituent ces élections.</p><p>- 53&nbsp;% de la population ont ainsi exprimé leur ferme volonté de se débarrasser de la tutelle de limpérialisme français.</p><p>- 53&nbsp;% de la population ont ainsi exprimé le profond mépris quils avaient pour ces vieillards qui courbent l’échine pour lécher les quelques os infectes, lâchés par les colonialistes français, ces hommes qui ont renoncé au droit à la souveraineté de leur peuple.</p><p>- 53&nbsp;% de la population ont répondu à lappel du GONG, en pratiquant lABSTENTION RÉVOLUTIONNAIRE.</p><p>Les réactionnaires n’étaient pas encore relevé de leur défaite, que le peuple de BASEE-TERRE passait à loffensive, et maîtrisait la ville pendant 4 jours (du 20 au 24 mars).</p><p>Ainsi, lannée 1967 à peine entamée, le peuple Guadeloupéen, sous la direction du GONG a remporté deux éclatantes victoires sur les forces réactionnaires, les forces des ténèbres.</p><hr><p><i>! EN COURS D'ÉDITION !</i></p>
@@ -0,0 +1 @@
<p>GONG INFORMATION</p><p>JOURNAL DU PATRIOTE GUADELOUPÉEN</p><p>Un peuple qui décide de se gouverner est un peuple qui entreprend de se critiquer et de sorganiser.</p><p>N° SPACIAL</p><p>UN DOCUMENT QUE TOUT</p><p>Groupe dOrganisation Nationale de la Guadeloupe</p><p>À PROPOS DE LARTICLE DE L’ÉTINCELLE&nbsp;: «&nbsp;QUELS INTÉRÊTS SERT LE G.O.N.G&nbsp;»</p><hr><p>! EN COURS D'ÉDITION !</p>
+155
View File
@@ -0,0 +1,155 @@
Ces dernières années écoulées ont vu l'effondrement quasi général du système colonial dans le monde. Avec l'accession de l'Algérie à l'indépendance, après la libération des pays de l'Afrique Noire, l'empire colonial français s'est presque évanoui.
Tout près de la Guadeloupe, le renversement de la dictature sanglante de Batista par le glorieux peuple cubain, la transformation de Cuba en un état libre et socialiste, l'accession des Antilles sous domination britannique à l'autonomie et à l'indépendance a ouvert la voie au mouvement de décolonisation au sein même de la Caraïbe.
Les ex-colonies, fortes de leur dignité et de leur souveraineté retrouvées, sont entrées avec enthousiasme dans la voie de leur développement économique et social, bénéficiant de l'aide des autres états plus développés ou des organismes internationaux. Ces nouveaux États jouent sur le plan international un rôle dont l'importance n'échappe à personne.
Cependant, la Guadeloupe, ainsi que les quatre autres « départements d'Outre-mer », continue à subir le joug colonial français.
Les adaptations successives apportées à la politique dite d'assimilation ne peuvent plus masquer cette évidence. C'est pourquoi, le colonialisme français, dans un dernier sursaut de nostalgie, essaie de tout mettre en œuvre pour conserver ce dernier carré de la colonisation.
Malgré tout, il s'est développé durant ces dernières années, un véritable courant pour l'autonomie dans tous les milieux guadeloupéens. Mais ce courant n'a pu jusqu'à présent constituer une force organisée capable de briser le joug colonialiste.
Les faiblesses du mouvement autonomiste sur le plan pratique résultent du fait que l'élite politique n'a pas été capable de s'unir pour offrir des perspectives claires et nettes au peuple, que les partis politiques existants n'ont pas su toujours se dégager de la gangue électoraliste et des habitudes importées par la domination française et envisager hardiment l'avenir et enfin parce que le travail systématique et nécessaire d'éducation et d'organisation des masses n'a pas été convenablement fait. Tout cela s'explique par le fait que la question de la libération politique de la Guadeloupe ne s'est jamais posée comme une lutte évolutive de libération nationale.
L'analyse objective de toutes ces considérations eut au cours des deux années écoulées pour conséquence d'insuffler aux différents courants autonomistes qui sporadiquement se manifestaient dans la capitale française un enthousiasme nouveau, générateur d'objectifs bien définis et de moyens de lutte inédits. Ce fut donc dans l'euphorie générale que naquit ce qu'il était convenu d'appeler le Front Antillo-Guyanais. Cependant l'objectivité nous commande d'affirmer que, l'impossibilité pour cette organisation de se relever d'une part, à la suite de la mesure de dissolution qui la frappait et de se développer d'autre part, découle de l'esprit de clocher voisin de l'autoritarisme qui présidait aux décisions essentielles, d'un manque de structuration organique, et enfin de divergences idéologiques sur la conception même du devenir respectif des pays intéressés.
Si les tâtonnements et les indécisions étaient inévitables en fonction même des conditions dans lesquelles le problème de l'autonomie se trouvait et se trouve encore posé leur perpétuation pourrait, à très brève échéance, plonger la Guadeloupe dans les plus terribles calamités.
Déjà la détérioration cumulative de la situation en Guadeloupe pose de façon non équivoque l'urgence de la mise en place des solutions adéquates. Elle pose en même temps et dramatiquement la nécessité d'une mobilisation générale de tous les Guadeloupéens pour la prise en main du destin de leur pays.
C'est pour toutes ces raisons, et profondément pénétrés du rôle qu'il leur appartient de jouer dans l'évolution de la Guadeloupe, qu'un certain nombre de Guadeloupéens, pour la plupart :
- Jeunes intellectuels en début de carrière ;
- Étudiants en fin d'études ;
- Travailleurs, ont décidé de créer une organisation en vue de tout mettre en œuvre pour :
- Réaliser la révolution politique, économique et sociale en Guadeloupe ;
- Construire une Guadeloupe nouvelle, souveraine et heureuse. Cette organisation prendra la dénomination de Groupe d'organisation nationale de la Guadeloupe (G.O.N.G.) (…)
## 1. Le droit du peuple guadeloupéen à disposer de lui-même
Le droit à l'autodétermination est un droit inaliénable et imprescriptible reconnu à tous les peuples et expressément notifié par la Charte des Nations unies. Les Guadeloupéens constituent un peuple majeur différent du peuple français. Communauté stable d'hommes avec un territoire propre, une histoire propre, une culture, une formation psychique, une langue (en dehors du français), une mentalité, des intérêts économiques, des mœurs, des besoins et des aspirations fondamentaux propres, ils constituent aujourd'hui une nation en pleine gestation certes, mais dont les composantes sont suffisamment nettes pour qu'elle revendique tous ses droits.
Il ne peut s'agir ici d'une minorité nationale pouvant s'intégrer à un ensemble national (français) plus grand. Il n'y a ici rien de comparable avec les exigences propres aux minorités nationales telles qu'on les rencontre en Corse, en Alsace, ou en Bretagne par exemple.
## 2. La Guadeloupe a le droit à la pleine souveraineté nationale
C'est un principe constant sur lequel on ne saurait transiger quand bien même le peuple guadeloupéen consentirait à hiérarchiser les étapes par lesquelles inéluctablement il atteindrait son objectif final.
Cette revendication du reste, bien que reflétant forcément les conditions objectives et subjectives qui la déterminent à un moment donné, s'inscrit en conséquence dans un cadre national.
La lutte du peuple guadeloupéen pour le triomphe de ses aspirations est par conséquent une lutte à caractère national pour la raison même que ces aspirations sont le reflet d'un désir encore plus ou moins conscient de libération du joug oppresseur.
## 3. La lutte pour ce droit est une lutte juste
Elle s'inscrit dans le grand courant de décolonisation qui constitue l'événement historique fondamental de notre époque.
Des conditions favorables existent aujourd'hui pour engager et mener à bien une telle lutte. Elles sont à la fois externes et internes.
**I. Externes.** La désagrégation générale du système colonial depuis la fin de la Deuxième Guerre mondiale fait qu'aujourd'hui les plus petits pays encore colonisés ont le droit de prétendre eux aussi rejeter le joug colonial.
- La condamnation ferme de l'O.N.U. du colonialisme et sa résolution tendant à la libération de tous les pays colonisés dans le courant de 1963.
- L'accession du Tiers Monde à la souveraineté nationale et internationale.
- L'existence du camp socialiste qui groupe plus du tiers de la population du globe et qui milite en faveur de l'émancipation des peuples sous tutelle.
Enfin l'accession récente de l'Algérie (naguère « départements français ») à l'indépendance de même que la transformation politique opérée dans les Antilles britanniques et la marche triomphante de la révolution cubaine en dépit de tous les mauvais coups de ses adversaires impérialistes, sont de nature à hâter l'évolution politique en Guadeloupe.
**II. Internes.** Ces conditions sont à la fois objectives et subjectives.
La preuve est faite que le système d'appartenance à la France ne saurait résoudre les problèmes spécifiques de la Guadeloupe car il existe un antagonisme fondamental entre les intérêts des travailleurs et consommateurs guadeloupéens d'une part et les intérêts des trusts monopolistes français d'autre part qui détiennent à la fois, la terre, les moyens de production et de transport, le commerce et l'administration. Il est de plus en plus acquis dans les plus larges couches que les problèmes guadeloupéens ne peuvent être résolus que par la prise en main par le peuple guadeloupéen de tous les leviers de commande de la vie politique, économique et sociale ; la lutte des travailleurs est indissolublement liée à la lutte pour la souveraineté nationale ; ces deux objectifs forment naturellement un tout qu'il est impossible de dissocier.
- Le cheminement progressif de l'idée autonomiste au sein des masses laborieuses.
- Le désintéressement significatif du peuple guadeloupéen pour tout ce qui concerne la politique française, marqué notamment par un absentéisme important des électeurs lors du dernier référendum et des élections législatives (près de 60 % d'abstention en dépit du bourrage massif et frauduleux des urnes organisé sous le patronage officiel).
- Enfin le fait le plus déterminant est encore l'engagement total de la jeunesse quelle que soit son origine sociale, et singulièrement de la grande masse des étudiants dans la lutte pour l'émancipation politique.
## 4. Nécessité d'une lutte révolutionnaire
La revendication du peuple guadeloupéen est une revendication nationale. Elle vise avant tout à transformer l'état de choses existant dans ce qu'il a de plus fondamental et de plus essentiel. Il s'agit de transformer radicalement la Guadeloupe, de créer une Guadeloupe libre et socialiste conformément aux exigences de notre temps, aux aspirations et aux besoins les plus impératifs de notre peuple.
La politique d'adaptation ou de réformes qui ne touchent pas aux structures en place débouche fatalement sur une impasse. Elle relève de la démagogie.
C'est donc une véritable révolution qu'il faut réaliser en Guadeloupe. (…)
## 6. Les objectifs de la révolution
Il résulte de l'analyse faite plus haut que la Révolution doit amener nécessairement la Guadeloupe à la pleine souveraineté.
Le mot d'ordre d'autonomie a constitué une étape nécessaire dans le processus de libération idéologique de la Guadeloupe. S'il a tenu compte des conditions subjectives liées d'une part aux difficultés de poser de façon concrète le problème, à un certain complexe sur les possibilités d'avenir d'une Guadeloupe totalement émancipée et, d'autre part, à certains sentiments d'attachement pour la France, aujourd'hui ce mot d'ordre paraît insuffisant ou insuffisamment explicité en raison du fait même que l'idée a largement pénétré dans les masses et que, pris en lui-même, le mot d'autonomie couvre un champ trop vaste d'interprétations.
Pour répondre aux aspirations de notre peuple et apporter des solutions conformes aux exigences de notre temps, la Révolution devra nécessairement déboucher sur un régime de démocratie.
Tout cela implique donc deux impératifs fondamentaux de la Révolution :
1. Accession de la Guadeloupe à la pleine souveraineté ;
2. Établissement en Guadeloupe d'un régime de démocratie populaire.
### La pleine souveraineté nationale
La lutte révolutionnaire a pour objectif de soustraire la Guadeloupe à la tutelle coloniale et à toute tutelle étrangère. Les Guadeloupéens veulent construire leur destin à l'exemple de tous les autres peuples et non subir un destin qu'on leur impose ; cela implique l'édification de la Guadeloupe en un état souverain dirigé par :
1. Une assemblée législative élue par le peuple ;
2. Un gouvernement révolutionnaire appuyé sur le peuple et contrôlé par lui.
Ces deux pouvoirs détenant les attributs de la souveraineté nationale.
### Rapports avec la France
La destruction des structures coloniales, l'accession à la pleine souveraineté, signifient l'établissement de nouveaux rapports entre l'ancienne métropole et la Guadeloupe. Seule l'issue de la lutte déterminera le caractère de ces nouveaux rapports.
### La Guadeloupe dans la Caraïbe
La Guadeloupe, de par sa situation même, est à vocation caraïbe. Le peuple, dans sa grande majorité, est sensible à tout ce qui se passe dans la Caraïbe et dans l'Amérique latine ; les progrès de la révolution cubaine sont suivis avec un intérêt croissant par les masses laborieuses. C'est la conjonction des divers colonialismes français, britannique, hollandais, espagnol et américain qui a dressé l'artificielle barrière qui existe entre les différents peuples de la Caraïbe.
Une des tâches essentielles de la Révolution sera de combattre cette barrière et de faciliter le rapprochement entre les différents pays de la Caraïbe.
À l'égard de nos frères de la Martinique et de la Guyane, la Révolution adoptera une attitude de solidarité agissante et fera tout pour faciliter le mouvement vers l'unité.
En dépit des spécificités propres à chacun des pays, de nombreuses raisons rapprochent ces trois pays et singulièrement la Guadeloupe et la Martinique :
- **Dans l'immédiat :** une solidarité étroite dans la lutte, une entente conjointe sur les objectifs ainsi qu'une coordination d'action ne pourront que renforcer le mouvement d'émancipation dans ces pays et hâter le moment de leur libération ;
- **Pour l'avenir :** une coopération étroite de ces pays dans tous les domaines, politique, économique, culturel, ne pourra que consolider le devenir respectif de chacun d'eux et faciliter leur édification en États modernes.
En tout état de cause, la construction en commun, l'établissement de liens organiques entre ces pays ne peuvent être possibles et efficaces que s'ils sont réalisés par des peuples devenus libres et que si, une fois libérés, ils s'engagent dans des voies démocratiques semblables. C'est pourquoi nous ne pouvons souscrire d'ores et déjà à telle ou telle forme d'union, car ce serait établir un préalable qui pourrait par la suite se révéler dangereux pour le devenir respectif de ces pays, dans la mesure où il pourrait faire le jeu de l'impérialisme dans la pratique.
Entre la dilution au sein d'un groupement vague niant l'originalité, les besoins et les aspirations respectifs de chaque partie et le confinement dans un particularisme national, étroit et chauvin, il y a assurément la place pour une entente profonde et durable.
Les aspirations à l'unité se situent dans une perspective historique juste. Elles traduisent le besoin de libération des masses, leur désir de mettre le maximum de forces en mouvement pour briser tous les obstacles à leur promotion.
> « L'unité entre des pays distincts est une œuvre gigantesque qui doit se poser dans le cadre d'options idéologiques, politiques et économiques communes correspondant aux intérêts des masses populaires. »
### Ouverture sur le monde
Un des facteurs non négligeables de notre développement est la possibilité pour notre pays de bénéficier de l'aide technique et financière des autres pays du monde.
C'est pourquoi, en matière de politique étrangère, la Guadeloupe doit jouir d'une liberté d'action. C'est pourquoi la Guadeloupe doit pouvoir se faire représenter auprès des principaux organismes internationaux.
L'argument répandu selon lequel la libération politique des Antilles transformerait ces pays en bases militaires au service d'un bloc ne résiste pas à l'examen. Il est directement inspiré par les colonialistes qui visent, en spéculant sur la volonté pacifiste de nos peuples, à mobiliser la sensibilité antillaise au service de leurs intérêts et à prolonger la tutelle coloniale.
### Un régime démocratique et populaire
La prise en main par notre peuple de ses propres affaires suppose l'orientation de la Révolution vers un régime démocratique et populaire ; c'est-à-dire l'union consciente de toutes les couches de la population pour la construction de la Guadeloupe dans le cadre des principes socialistes.
Le but primordial de la Révolution doit être la transformation radicale du système économique actuel de profit en une économie de besoins : la satisfaction des besoins essentiels du peuple.
Seule une perspective socialiste peut créer les conditions adéquates à cette transformation. L'édification de la Guadeloupe en État moderne, la résolution efficace des problèmes, le triomphe contre les obstacles de toutes sortes et les immenses difficultés ne seront possibles que dans le cadre d'un régime qui permet l'initiative, la vigilance et le contrôle du peuple.
Le développement accéléré du sens de la responsabilité collective est en l'occurrence facteur de progrès et gage de succès.
Les objectifs suivants constituent les principes fondamentaux de la Révolution en matière économique :
1. Réforme agraire assurant le contrôle du peuple sur la propriété foncière et sur la production agricole ;
2. Refonte du commerce ;
3. Industrialisation, source d'activités nouvelles et d'utilisation du potentiel humain de travail ;
4. La planification scientifique et démocratique seule capable d'assurer le développement harmonieux, proportionné et rapide de l'économie dans tous ses secteurs (agriculture, industrie, commerce, transport, pêche, etc.) constituera le principe essentiel, le moteur qui permettra d'atteindre dans toute leur ampleur ces objectifs.
## 7. Les conditions du succès
Telles sont dans leurs grandes lignes les conditions de l'émancipation de notre pays.
Jamais les chances de succès n'ont été si grandes ; il faut savoir les saisir.
> « La force du mouvement national est fonction du degré de participation à ce mouvement de vastes couches de la nation, du prolétariat et de la paysannerie. »
Toutes les difficultés, toutes les oppositions, toute résistance du colonialisme seront rapidement balayées quand le peuple aura compris la nécessité de s'unir sur la base de ces principes pour briser le cadre d'une domination triséculaire.
**Le G.O.N.G. — Adopté en Assemblée générale — juin 1963.**
+76
View File
@@ -0,0 +1,76 @@
## Définitions
**Client :** tout professionnel ou personne physique capable au sens des articles 1123 et suivants du Code civil, ou personne morale, qui visite le Site objet des présentes conditions générales.
**Prestations et Services :** gong.gp met à disposition des Clients un ensemble de contenus documentaires et historiques.
**Contenu :** ensemble des éléments constituant l'information présente sur le Site, notamment textes, images, vidéos.
**Informations clients :** ci-après dénommées « Information(s) », elles correspondent à l'ensemble des données personnelles susceptibles d'être détenues par gong.gp pour la gestion de votre compte, de la relation client et à des fins d'analyses et de statistiques.
**Utilisateur :** internaute se connectant et utilisant le site susnommé.
**Informations personnelles :** « les informations qui permettent, sous quelque forme que ce soit, directement ou non, l'identification des personnes physiques auxquelles elles s'appliquent » (article 4 de la loi n° 78-17 du 6 janvier 1978).
Les termes « données à caractère personnel », « personne concernée », « sous-traitant » et « données sensibles » ont le sens défini par le Règlement Général sur la Protection des Données (RGPD : n° 2016-679).
## 1. Présentation du site internet
En vertu de l'article 6 de la loi n° 2004-575 du 21 juin 2004 pour la confiance dans l'économie numérique, il est précisé aux utilisateurs du site internet gong.gp l'identité des différents intervenants dans le cadre de sa réalisation et de son suivi :
- **Propriétaire :** ORGANISATION KA INTERNATIONALE — 36 rue Lethière, 97100 Basse-Terre.
- **Responsable publication :** ORGANISATION KA INTERNATIONALE — kontak@o-k-i.net. Le responsable publication est une personne physique ou une personne morale.
- **Webmaster :** Cédric Famibelle-Pronzola — contact@cedric-pronzola.dev.
- **Hébergeur :** OVH — 2 rue Kellermann, 59100 Roubaix.
- **Délégué à la protection des données :** ORGANISATION KA INTERNATIONALE — kontak@o-k-i.net.
## 2. Conditions générales d'utilisation du site et des services proposés
Le Site constitue une œuvre de l'esprit protégée par les dispositions du Code de la Propriété Intellectuelle et des réglementations internationales applicables. Le Client ne peut en aucune manière réutiliser, céder ou exploiter pour son propre compte tout ou partie des éléments ou travaux du Site en dehors du cadre de la licence indiquée à l'article 5.
L'utilisation du site gong.gp implique l'acceptation pleine et entière des conditions générales d'utilisation ci-après décrites. Ces conditions d'utilisation sont susceptibles d'être modifiées ou complétées à tout moment ; les utilisateurs du site gong.gp sont donc invités à les consulter de manière régulière.
Ce site internet est normalement accessible à tout moment aux utilisateurs. Une interruption pour raison de maintenance technique peut toutefois être décidée par gong.gp, qui s'efforcera alors de communiquer préalablement aux utilisateurs les dates et heures de l'intervention.
## 3. Description des services fournis
Le site internet gong.gp a pour objet de fournir une information concernant l'histoire du Groupe d'Organisation Nationale de la Guadeloupe. gong.gp s'efforce de fournir des informations aussi précises que possible. Toutefois, il ne pourra être tenu responsable des oublis, des inexactitudes et des carences dans la mise à jour, qu'elles soient de son fait ou du fait des tiers partenaires qui lui fournissent ces informations.
Toutes les informations indiquées sur le site gong.gp sont données à titre indicatif et sont susceptibles d'évoluer. Les renseignements figurant sur le site ne sont pas exhaustifs et sont donnés sous réserve de modifications ayant été apportées depuis leur mise en ligne.
## 4. Limitations contractuelles sur les données techniques
Le site utilise la technologie JavaScript. Le site internet ne pourra être tenu responsable de dommages matériels liés à son utilisation. L'utilisateur s'engage à accéder au site en utilisant un matériel récent, ne contenant pas de virus et avec un navigateur de dernière génération mis à jour.
Le site gong.gp est hébergé chez un prestataire sur le territoire de l'Union européenne conformément aux dispositions du Règlement Général sur la Protection des Données (RGPD : n° 2016-679).
## 5. Propriété intellectuelle et licence
Le site internet **gong.gp** et les éléments qui y sont accessibles (textes, images, graphismes, logos, vidéos, icônes, sons, etc.) sont, sauf mention contraire, mis à disposition sous la licence [GNU Affero General Public License Version 3 (AGPL-3.0)](https://www.gnu.org/licenses/agpl-3.0.html). Cette licence garantit aux utilisateurs les libertés suivantes :
- liberté d'exécuter le programme pour tous les usages ;
- liberté d'étudier le fonctionnement du programme et de l'adapter à vos besoins ;
- liberté de redistribuer des copies du programme ;
- liberté d'améliorer le programme et de publier vos modifications.
Conformément aux exigences de la licence AGPL-3.0, si vous redistribuez ou modifiez des éléments du site, vous devez également fournir le code source complet, incluant vos modifications, sous la même licence. Les textes historiques reproduits sur ce site (charte, documents de 1963, extraits d'archives) appartiennent au patrimoine documentaire et sont cités à des fins de mémoire, de recherche et d'éducation, avec mention de leur provenance.
## 6. Limitations de responsabilité
gong.gp agit en tant qu'éditeur du site. gong.gp ne pourra être tenu responsable des dommages directs et indirects causés au matériel de l'utilisateur lors de l'accès au site, résultant soit de l'utilisation d'un matériel ne répondant pas aux spécifications indiquées au point 4, soit de l'apparition d'un bug ou d'une incompatibilité.
## 7. Gestion des données personnelles
Le site gong.gp est un site statique à but documentaire. Il ne collecte pas de données personnelles à des fins commerciales et ne les revend pas. Conformément au RGPD (n° 2016-679) et à la loi Informatique et Libertés, les utilisateurs disposent des droits d'accès, de rectification, d'effacement, de limitation, d'opposition et de portabilité de leurs données.
Pour exercer ces droits, l'utilisateur peut contacter le responsable du traitement : ORGANISATION KA INTERNATIONALE — DPO, 36 rue Lethière, 97100 Basse-Terre. Les utilisateurs peuvent également déposer une réclamation auprès de la CNIL ([www.cnil.fr](https://www.cnil.fr/fr/plaintes)).
## 8. Liens hypertextes et cookies
Le site gong.gp contient des liens hypertextes vers d'autres sites, mis en place avec l'autorisation de l'éditeur. Cependant, gong.gp n'a pas la possibilité de vérifier le contenu des sites ainsi visités et n'assumera en conséquence aucune responsabilité de ce fait.
Dans sa version SvelteKit statique, le site ne dépose pas de cookies de suivi publicitaire ni de traceurs tiers. Seule une préférence de thème (clair/sombre) peut être enregistrée localement dans le navigateur ; elle n'est jamais transmise à un serveur.
## 9. Droit applicable et attribution de juridiction
Tout litige en relation avec l'utilisation du site gong.gp est soumis au droit français. En dehors des cas où la loi ne le permet pas, il est fait attribution exclusive de juridiction aux tribunaux compétents de Guadeloupe.
+139
View File
@@ -0,0 +1,139 @@
Au cours de la journée d'étude du 1er mai, en présence de représentants de l'AGEC, de l'A.A.C., le bureau provisoire a débattu des voies et moyens et du programme d'activités de l'année 1963. Considérant l'extrême importance de connaître concrètement pourquoi nous voulons notre libération, comment nous entendons mener notre lutte, nous avons décidé de poser quelques conclusions fondamentales qui doivent constituer l'option politique et stratégique du militant du G.O.N.G. Nous ne pouvons aller de l'avant si nous ne tombons pas tous d'accord sur l'attitude politique à observer, la méthode d'action de lutte à appliquer.
L'adoption de ce rapport engagera clairement tous les militants et sera leur constante référence jusqu'à l'intervention de données exceptionnelles capables de modifier le processus de notre lutte.
Un examen très approfondi a porté sur les questions suivantes :
1. Lutte de masse et lutte de classe.
2. Lutte de masse en tant que moyen de lutte révolutionnaire.
3. La lutte révolutionnaire armée.
4. La violence libératrice.
5. Les exemples de lutte de libération nationale.
6. Les possibilités concrètes de la lutte en Guadeloupe.
7. La voie révolutionnaire de la Guadeloupe.
8. L'établissement du programme d'action du G.O.N.G.
Voici les conclusions qui ont été dégagées.
## Points 1 et 2 : de la lutte de masse en tant que moyen de lutte de libération nationale
La lutte de masse est l'entrée en action des plus larges couches de la population dans une mobilisation générale pour le triomphe d'une revendication bien définie. Elle est basée en pays sous-développé sur la recherche du mieux-être et l'aspiration à la dignité.
La lutte de masse peut être le résultat de l'organisation d'une alliance temporaire comportant des avantages immédiats pour les deux partis : la classe ouvrière et paysanne dans une société avancée d'un côté et la bourgeoisie de l'autre. En ce qui concerne la Guadeloupe, la lutte de masse doit être le résultat de l'organisation des différentes catégories sociales mobilisées sur un thème unitaire : la revendication nationale, un statut d'État souverain associé avec un programme révolutionnaire qui doit tenir compte essentiellement des intérêts de l'ensemble de la population et en premier lieu des paysans et ouvriers constituant la force motrice de la révolution. Car l'analyse dialectique permet d'affirmer que la contradiction principale est celle qui existe entre les catégories sociales du peuple dans son entier et le colonialisme et l'impérialisme français. La résolution de cette contradiction constitue le caractère national de notre lutte de libération. Des contradictions internes entre les intérêts de diverses catégories sociales existent, elles doivent tendre vers une solution acceptable pour tous, vers une responsabilité de plus en plus élargie aux couches les plus nombreuses de la population guadeloupéenne. La résolution de ces contradictions internes menées sous le nom de la lutte de classe constitue le caractère démocratique de notre lutte. Dans une stratégie générale, la lutte pour la Démocratie doit nécessairement être menée en même temps que la lutte de libération. Elle ne doit pas bloquer le travail d'organisation nationale ; bien comprise, elle ne saurait être invoquée pour rejeter les cadres nationaux capables d'apporter qualitativement et quantitativement un sérieux appoint à notre lutte.
Chaque responsable, chaque militant doit tenir compte de cette attitude politique dans le travail d'unification et d'organisation politiques. Nous faisons nôtre cette appréciation de Staline : « La force du mouvement national est fonction du degré de participation des vastes couches de la nation, du prolétariat et de la paysannerie » ; et c'est l'occasion de rappeler avec Mao le rôle des jeunes intellectuels et étudiants militant au G.O.N.G. Ils doivent aller aux masses paysannes et ouvrières pour les mobiliser et les organiser selon ces principes. Ils seront jugés, évalués non sur leurs connaissances livresques et techniques mais sur leur capacité à s'intégrer au peuple, à mener une action concrète, à réaliser une tâche définie dans le sens de cette orientation de lutte. Éduquer, mobiliser, organiser, voilà la ligne à suivre.
### Position sur un des moyens de lutte de masse : le suffrage universel
Le suffrage universel doit être considéré comme une arme du peuple ; il l'utilise pour la défense de sa revendication nationale, pour exprimer à la face du monde, par le choix d'un ou plusieurs représentants authentiques, sa volonté de faire aboutir le programme défendu. Tout représentant élu démocratiquement doit obligatoirement avoir pour tâche de combattre le système de dépendance et de faire de l'agitation pour le changement de statut politique. Dans les conditions démocratiques de vote, le peuple doit participer aux élections, exprimer sa volonté, du moment que ces élections vont dans le sens de ses intérêts, et qu'il a la garantie du respect de ses suffrages. Cependant il est à noter que dans le rapport actuel des forces, le colonialisme se sert le plus souvent du geste électoral du Guadeloupéen pour cautionner, grâce à la fraude et à la force policière, les fantoches qui servent son intérêt. Le peuple doit refuser d'aller aux urnes chaque fois qu'il s'agit d'une mascarade organisée par le colonialisme, sous le joug de ses forces armées. Bien plus, il doit supprimer le moyen d'oppression par un boycott systématique et organisé de telle sorte que cette action devienne un événement politique positif pour sa lutte de libération nationale. Dans le cas d'une élection globale devant décider de l'avenir politique du peuple guadeloupéen, la position du G.O.N.G. est que la participation aux urnes ne sera valable que si toutes les garanties sont réunies par un contrôle neutre et international.
Nous voyons que l'ensemble de la lutte révolutionnaire ne saurait tendre ni uniquement, ni principalement à faire élire des représentants chargés de faire de l'agitation et de poser dans les formes constitutionnelles la Revendication Nationale. Nous constatons que les actuels « mal élus » ne pourront à aucun moment prétendre négocier au nom du peuple guadeloupéen. Nous constatons que tant que l'arme du suffrage universel ne sera pas contrôlée par le peuple, l'électoralisme doit être liquidé en tant que moyen de lutte révolutionnaire de libération nationale.
## Points 3 et 4 : lutte révolutionnaire armée, violence libératrice
Tout le monde admet que le passage de la lutte politique à la lutte armée constitue un tournant extrêmement grave et important pour le salut national. Lénine nous enseigne que l'insurrection doit s'appuyer sur l'essor révolutionnaire des masses et non sur un complot. L'histoire nous enseigne que le colonialisme ne recule que devant des actions de force à l'échelle du peuple opprimé.
La force doit s'entendre aussi bien dans le sens matériel que moral. Elle se traduit par les rapports existant entre les avantages et les faiblesses des parties opposées.
Tenant compte des luttes des peuples qui se sont libérés du joug du colonialisme, des conditions spécifiques de la lutte en Guadeloupe, le G.O.N.G. admet la violence libératrice spécifique comme moyen intégré de notre lutte de libération nationale. Mais nous précisons que l'action terroriste au stade actuel ne ferait que défavoriser notre cause. Nous devons à tout prix éviter l'extermination de nos forces naissantes. Les interventions armées ne peuvent, en aucun cas, être déclenchées avant que le peuple, soutien logistique de la Révolution, ne les ait admises et rendues possibles.
L'analyse brève et comparative des forces nous montre que l'adversaire est avantagé sur les points suivants :
- la qualité et la quantité des armes,
- les forces de répression bien entraînées,
- un sens élevé de l'organisation,
- une propagande largement orchestrée à l'intérieur comme à l'extérieur.
Nos avantages :
- Notre cause est juste. Nous luttons contre l'oppression politique, économique, sociale, pour le droit de nous diriger nous-mêmes (« souveraineté nationale »).
- L'ensemble de notre population est d'accord pour un changement de statut.
- La lutte se passera en tout premier lieu sur un sol où vit un peuple qui en a une parfaite connaissance et soutient ses fils.
- Le soutien international des peuples libérés du colonialisme et des peuples du camp socialiste.
- Les contradictions internes de l'impérialisme.
Notre faiblesse sur le plan matériel apparaît clairement. Il faut noter que ces avantages du camp colonialiste portent sur des points secondaires ; dans une évaluation dialectique correcte, le passage de l'état d'infériorité initiale à l'état de supériorité finale est possible, car notre force est, elle, capable de se développer plus vite sur les points essentiels au cours même de la lutte :
- participation des larges masses à la lutte de libération,
- soutien de plus en plus large de l'opinion internationale.
Ainsi apparaît une notion fondamentale à retenir : notre stratégie de lutte de libération doit être envisagée sous l'angle d'une résistance de longue durée. Toute conception née de l'impatience visant à enlever une victoire rapide serait une grave erreur et devrait être combattue.
C'est à une **victoire politique** que doivent tendre toutes nos forces.
Pourquoi victoire politique ? Toute lutte aboutit nécessairement à une négociation ; celle que nous visons doit entraîner des conséquences telles que le colonialisme se trouvera objectivement dans l'incapacité de poursuivre son œuvre d'exploitation et de domination, des conséquences telles que notre destin soit assuré par notre responsabilité. D'où cette notion fondamentale de penser la stratégie d'organisation du peuple comme une lutte de construction nationale. En résumé : abattre l'impérialisme, préparer les structures organisationnelles d'une Guadeloupe libre, souveraine, moderne, heureuse. Nous voyons que les conditions de succès de notre lutte révolutionnaire anticolonialiste, anti-impérialiste, de libération et de construction nationales sont précisément l'existence d'un mouvement puissant et agissant. « La révolution est impossible sans lutte nationale généralisée. »
## Point 5 : des exemples de lutte de libération nationale
Nous savons que chaque révolution, chaque lutte de libération nationale est dans chacun des cas un phénomène unique, propre à telle époque historique, à tel pays — c'est-à-dire aux conditions politique, économique et physique du peuple qui mène la lutte. Cependant, nous affirmons que toutes les révolutions confirment la loi fondamentale suivante : « Il ne suffit pas, pour que la révolution ait lieu, que les masses exploitées et opprimées soient conscientes de l'impossibilité de vivre comme autrefois et réclament le changement. Il faut, pour que la révolution ait lieu, que les exploiteurs, les colonialistes et leurs suppôts ne puissent pas vivre et gouverner comme autrefois. »
Nous décidons, non pas de mener la lutte révolutionnaire à la manière du Vietnam, de Cuba ou de l'Algérie, mais de bénéficier de leur expérience de la lutte de libération, de leur aide, de leurs apports positifs à la lutte mondiale de décolonisation.
## Points 6 et 7 : possibilité concrète de la lutte, voie révolutionnaire en Guadeloupe
**Sur le plan politique.** L'analyse des forces politiques et sociales montre que les forces autonomistes (A.G.E.G., P.G.G., M.D.A., syndicats, personnalités progressistes) n'ont pu jusqu'à présent réaliser l'unité politique sur la base d'une lutte de libération nationale, et sur un programme minimum à contenu social et économique entraînant l'adhésion du peuple.
Mais des possibilités concrètes d'unité se dégagent. L'A.G.E.G., force nationale, offre des possibilités concrètes d'organiser la jeunesse guadeloupéenne sur une base nationale. Elle a adopté le mot d'ordre « Unité et organisation » du peuple. Les débats sur le thème de l'unité ont, malgré les divergences idéologiques, imposé à tous la lutte de libération nationale, au P.C.G. comme chez le M.D.A.
Les ouvriers guadeloupéens de Paris se regroupent au sein de l'A.G.T.A.G., afin de participer au combat de libération.
En Guadeloupe et à Paris, l'existence de groupes de jeunes révolutionnaires prouve, s'il en était besoin, que la crise générale progresse.
**Sur le plan de la résistance physique.** La résistance physique, l'emploi de certaines formes d'actions armées, de la violence spécifique, sont dans nos possibilités. Car pendant la guerre colonialiste menée au Vietnam par la France, pendant son combat d'extermination mené contre le peuple algérien, plusieurs générations de jeunes guadeloupéens ont servi contre leurs frères coloniaux. Ils ont compris par l'action, par la vue directe, que leur position auprès de l'oppresseur était incompatible avec leur origine, leurs aspirations. Ils sont dans la grande majorité d'accord pour risquer leur vie en pleine conscience, pour leur dignité, leur liberté, contre ces mêmes forces qui les avaient embrigadés d'office.
Mais il existe, aussi bien dans les partis de gauche, dans le camp des étudiants et bien entendu dans les rangs des valets et des personnalités, des hommes qui prônent un verbalisme révolutionnaire tendant à maintenir nos forces dans un pacifisme garanti. Il nous faut combattre ces pacifistes si nous voulons faire avancer l'idée d'une lutte réelle ; il nous faut écarter les obstacles nombreux qu'ils accumulent pour repousser indéfiniment la réalisation des conditions objectives de la lutte de libération nationale.
Notre position est que notre peuple ne se refusera pas à manier les armes, à en avoir pour défendre son droit à la liberté après que son sang ait été prélevé pour des raisons contraires à son intérêt. Dans le cas contraire, nous mériterions notre esclavage.
La conclusion qui s'impose est que la voie guadeloupéenne est celle d'une lutte politique de masse généralisée portant sur tous les plans et dans tous les domaines, utilisant tous les moyens, y compris les actions armées, la violence spécifique, dans la mesure des possibilités concrètes de la Guadeloupe.
Voici, condensées, les lignes générales de notre orientation et stratégie. Ces lignes sont pour l'instant propulsées et appliquées par le G.O.N.G. Nous espérons qu'elles seront dans leur plus grande part adoptées par le mouvement national guadeloupéen.
### En ce qui concerne la lutte de masse
La phase préliminaire, dans cette étape pré-révolutionnaire actuelle, comporte une préparation systématique, impérieuse, intransigeante et accélérée des cadres révolutionnaires. L'accélération de l'histoire nous impose des mesures d'urgence et une réduction du temps de maturation. Les militants doivent rapidement apprendre les méthodes d'agitation, d'organisation, de mobilisation et de direction.
Il s'agit de développer et de renforcer l'action pour :
- généraliser la prise de conscience ;
- poser la revendication nationale dans tous les domaines de la vie quotidienne : sur les lieux de travail, dans les écoles, les églises, les syndicats, les partis politiques, les associations culturelles ou sportives, les sociétés mutualistes ;
- accroître l'agitation politique afin de créer un état de tension révolutionnaire par l'édition de tracts, d'affiches, d'inscriptions sur les murs, par l'organisation de meetings, le noyautage de manifestations officielles placées sous l'égide du système. Créer et multiplier les organisations de masse pour la lutte en plein jour. Mais surtout passer à l'organisation concrète des groupes révolutionnaires, d'organisations nouvelles sur la base des catégories des activités professionnelles en y développant l'idéologie de la lutte de libération nationale avancée par le G.O.N.G. — d'où l'apparition d'organisations telles que :
- Syndicat national,
- Mouvement national de la jeunesse,
- Association des artisans et des petits commerçants,
- Union nationale des femmes.
L'union des paysans et des petits planteurs est certainement la tâche qui entraînera la phase du regroupement des forces guadeloupéennes sous une direction unifiée et à forte cohésion interne en un vaste Front Uni ou mouvement national de la Guadeloupe.
### Sur la question de la violence
Le moment de son entrée en scène sera déterminé après une évaluation dialectique de nos forces, selon les conditions et les besoins de la lutte. Les militants doivent faire de la propagande pour l'action armée ou la violence afin de la préparer, de la rendre possible, puisque nous devons y recourir.
De toute évidence, il faut que les premières conditions soient remplies, ou presque en totalité, pour qu'interviennent :
- la grève générale,
- le boycott du commerce et de l'économie colonialiste,
- le boycott de l'administration colonialiste en même temps que la création d'une administration parallèle guadeloupéenne,
- le boycott des élections législatives et générales.
Les actions armées contre les institutions et corps constitués représentant concrètement la tutelle (préfecture, gendarmerie, casernes de C.R.S.…), la liquidation des traîtres, des valets, et des représentants de la tutelle, et l'insurrection.
Les actions contre les institutions administratives et économiques doivent être politiques (ex. précédents).
**À l'extérieur :**
- Poser de manière systématique et claire le problème guadeloupéen et notre revendication nationale devant la conscience française.
- Entraîner l'aide effective des organisations anticolonialistes en France par des activités concrètes de soutien en plein jour.
- Utiliser la solidarité agissante des nations sœurs pour l'obtention d'une aide matérielle, financière et technique à la révolution guadeloupéenne. Démasquer le gouvernement français devant l'opinion publique internationale quand il prétend avoir terminé la décolonisation.
- Dénoncer les hommes de l'ancien Front Antillo-Guyanais qui volent la représentativité de notre peuple auprès des pays du tiers monde, les arrivistes guadeloupéens liés à ces usurpateurs.
- Préparer les techniciens à formation polymorphe pour la lutte armée, les commandos destinés à accomplir les tâches spéciales de la révolution.
La mise en route et la réussite d'une telle stratégie supposent :
1. **Une ligne politique juste :** notre revendication de souveraineté nationale est juste ; le contenu social qui sera proposé à notre peuple tiendra compte essentiellement de ses intérêts, et aura un caractère démocratique.
2. **Un bloc unitaire national :** notre tâche d'unité, d'organisation de tout le peuple est réalisable car elle reflète un besoin de tous les Guadeloupéens.
3. **Un plan de lutte correctement élaboré :** l'engagement de tout notre peuple organisé pour se battre sur tous les plans est un gage indéniable de succès.
## « Nous vaincrons »
Rangeons-nous sous la bannière du G.O.N.G. pour poursuivre la lutte contre l'impérialisme, contre le colonialisme français et ses valets locaux.
-70
View File
@@ -1,70 +0,0 @@
.card {
cursor: pointer;
display: flex;
flex-direction: column;
height: 100%;
}
.card-content {
flex-grow: 1;
}
.footer {
padding: .5rem 1rem;
position: fixed;
bottom: 0;
width: 100%;
}
.footer q {
font-size: 0.9rem;
line-height: 1.2;
}
.footer small {
font-size: 0.8rem;
}
.has-border-top {
border-top: 2px solid #da131a;
}
.has-shadow-top {
box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}
hr {
margin-block: .5rem !important;
}
.orientation-modal, .charte-modal {
color: #da131a;
transition: color 0.3s ease;
text-decoration: underline;
}
.orientation-modal:hover, .charte-modal:hover {
color: rgb(255, 20, 28);
}
strong {
color: #f5f5f5;
}
#template {
margin-bottom: 10em;
}
@media (max-width: 768px) {
.columns.is-multiline {
max-width: 100%;
}
.footer {
font-size: xx-small;
}
#template {
margin-bottom: 15em;
}
}
-922
View File
@@ -1,922 +0,0 @@
<!DOCTYPE html>
<html lang="fr" class="has-background-dark">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="BRISER LES URNES COLONIALISTES. CONQUÉRIR LINDÉPENDANCE NATIONALE">
<meta name="keywords" content="gong.gp, GONG, G.O.N.G, gong, Pierre Sainton, Sainton, Serge Glaude, Guadeloupe, Gwadloup, Gwadlup, Karukera, KARUKERA, 971">
<meta name="author" content="OKI">
<meta name="url" content="https://gong.gp"/>
<meta property="og:title" content="GONG - Groupe dOrganisation Nationale de la Guadeloupe"/>
<meta property="og:type" content="website"/>
<meta property="og:url" content="https://gong.gp"/>
<meta property="og:site_name" content="GONG - Groupe dOrganisation Nationale de la Guadeloupe"/>
<meta property="og:description" content="BRISER LES URNES COLONIALISTES. CONQUÉRIR LINDÉPENDANCE NATIONALE"/>
<meta property="og:locale" content="fr_FR"/>
<meta property="og:image" content="https://gong.gp/gong-logo.png"/>
<meta property="og:image:width" content="512"/>
<meta property="og:image:height" content="512"/>
<meta name="twitter:site" content="@OrganisationKA"/>
<meta name="twitter:creator" content="@OrganisationKA"/>
<meta name="twitter:title" content="GONG - Groupe dOrganisation Nationale de la Guadeloupe"/>
<meta name="twitter:description" content="BRISER LES URNES COLONIALISTES. CONQUÉRIR LINDÉPENDANCE NATIONALE"/>
<meta name="twitter:image" content="https://gong.gp/gong-logo.png"/>
<meta name="twitter:image:alt" content="GONG Logo"/>
<meta name="twitter:card" content="summary_large_image"/>
<script src="https://unpkg.com/htmx.org"></script>
<script src="https://unpkg.com/htmx.org/dist/ext/client-side-templates.js"></script>
<script src="https://unpkg.com/mustache@latest"></script>
<link rel="canonical" href="https://gong.gp/" />
<link rel="icon" href="./favicon.ico" type="image/x-icon" sizes="32x32"/>
<link rel="icon" href="./icon.png" type="image/png" sizes="192x192"/>
<link rel="apple-touch-icon" href="./apple-icon.png" type="image/png" sizes="192x192"/>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@1.0.0/css/bulma.min.css"/>
<link rel="stylesheet" href="./css/main.css" />
<title>GONG - Groupe dOrganisation Nationale de la Guadeloupe</title>
<!-- En hommage à Pierre Sainton (1924 - 2018) -->
<!-- Pour nous contacter : gong971@proton.me -->
</head>
<body class="has-background-dark">
<section>
<div class="container has-text-centered">
<h1 class="title is-1 has-text-light">GONG</h1>
<p class="subtitle has-text-weight-bold has-text-light">Groupe dOrganisation Nationale de la <strong class="has-text-light">Guadeloupe</strong></p>
<figure class="image is-128x128 mx-auto mb-3">
<img alt="Logo GONG" src="./img/gong.png">
</figure>
<h1 class="title is-4"><a class="js-modal-trigger charte-modal" data-target="modal-charte">LA CHARTE DU GONG</a></h1>
<h2 class="title is-6"><a class="js-modal-trigger orientation-modal" data-target="modal-orientation">ORIENTATION ET STRATEGIE DE LA LUTTE REVOLUTIONNAIRE DU PEUPLE GUADELOUPEEN</a></h2>
<p class="subtitle is-6 is-uppercase has-text-light"><q><i>La résistance à loppression est un droit naturel</i></q> L. DELGRES</p>
</div>
</section>
<hr>
<section class="has-background-dark">
<div class="container is-max-widescreen" id="template" hx-boost hx-ext="client-side-templates">
<div
hx-get="https://api.gong.gp/api/articles?populate=couverture&sort=publishedAt:desc"
hx-trigger="load"
mustache-template="articles">
</div>
<script id="articles" type="x-tmpl-mustache">
<div class="columns is-multiline p-3">
{{#data}}
<div class="column is-one-third">
<div class="card has-background-black-ter has-text-light" onclick="openModalFromTemplate()"
hx-target=".modal-request"
hx-get="https://api.gong.gp/api/articles/{{id}}?populate=couverture,fichiers">
<div class="card-image">
<figure id="info-details" class="image is-3by2">
<img src="https://api.gong.gp{{attributes.couverture.data.attributes.url}}" alt="{{attributes.couverture.data.attributes.alternativeText}}">
</figure>
</div>
<div class="card-content">
<div class="content">
<h2 class="title has-text-light">{{attributes.titre}}</h2>
<p class="is-italic">{{{attributes.chapeau}}}</p>
</div>
</div>
<footer class="card-footer">
<div class="has-text-centered" style="width: 100%">
<p class="my-3"><small><i>Date de publication : {{attributes.date}}</i></small></p>
</div>
</footer>
</div>
</div>
{{/data}}
</div>
</script>
</div>
</section>
<div id="modal-charte" class="modal">
<div class="modal-background"></div>
<div class="modal-card">
<header class="modal-card-head has-background-dark">
<p class="modal-card-title has-text-centered has-text-light">LA CHARTE DU GONG <br> Juin 1963</p>
<button class="delete" aria-label="close"></button>
</header>
<section class="modal-card-body has-text-justified has-background-dark has-text-light">
<p>
Ces dernières années écoulées ont vu l'effondrement quasi général du système colonial dans le monde.
Avec l'accession de l'Algérie à l'indépendance, après la libération des pays de l'Afrique Noire,
l'empire colonial français s'est presque évanoui.
</p>
<p>
Tout près de la Guadeloupe, le renversement de la dictature sanglante de Batista par le glorieux peuple cubain,
la transformation de Cuba en un état libre et socialiste, l'accession des Antilles sous domination britannique
à l'autonomie et à l'indépendance a ouvert la voie au mouvement de décolonisation au sein même de la Caraïbe.
</p>
<p>
Les ex-colonies, fortes de leur dignité et de leur souveraineté retrouvées, sont entrées avec enthousiasme
dans la voie de leur développement économique et social, bénéficiant de laide des autres états plus développés ou des organismes internationaux.
Ces nouveaux États jouent sur le plan international un rôle dont l'importance n'échappe à personne.
</p>
<p>
Cependant, la Guadeloupe, ainsi que les quatre autres «départements d'Outre-mer», continue à subir le joug colonial français.
</p>
<p>
Les adaptations successives apportées à la politique dite dassimilation ne peuvent plus masquer cette évidence.
C'est pourquoi, le colonialisme français, dans un dernier sursaut de nostalgie, essaie de tout mettre en œuvre pour conserver ce dernier carré de la colonisation.
</p>
<p>
Malgré tout, il s'est développé durant ces dernières années, un véritable courant pour l'autonomie dans tous les milieux guadeloupéens.
Mais ce courant n'a pu jusqu'à présent constituer une force organisée capable de briser le joug colonialiste.
</p>
<p>
Les faiblesses du mouvement autonomiste sur le plan pratique résultent du fait que l'élite politique na pas été capable de s'unir
pour offrir des perspectives claires et nettes au peuple, que les partis politiques existants n'ont pas su toujours se dégager de la gangue électoraliste
et des habitudes importées par la domination française et envisager hardiment l'avenir et enfin parce que le travail systématique et nécessaire d'éducation
et d'organisation des masses na pas été convenablement fait. Tout cela s'explique par le fait que la question de la libération politique de la Guadeloupe
ne s'est jamais posée comme une lutte évolutive de libération nationale.
</p>
<p>
L'analyse objective de toutes ces considérations eut au cours des deux années écoulées pour conséquence d'insuffler aux différents courants autonomistes
qui sporadiquement se manifestaient dans la capitale française un enthousiasme nouveau, générateur d'objectifs bien définis et de moyens de lutte inédits.
Ce fut donc dans l'euphorie générale que naquit ce qu'il était convenu d'appeler le Front Antillo-Guyanais. Cependant lobjectivité nous commande d'affirmer que,
l'impossibilité pour cette organisation de se relever d'une part, à la suite de la mesure de dissolution qui la frappait et de se développer d'autre part,
découle de l'esprit de clocher voisin de l'autoritarisme qui présidait aux décisions essentielles, d'un manque de structuration organique, et enfin de divergences
idéologiques sur la conception même du devenir respectif des pays intéressés.
</p>
<p>
Si les tâtonnements et les indécisions étaient inévitables en fonction même des conditions dans lesquelles le problème de l'autonomie se trouvait et se trouve encore
posé leur perpétuation pourrait, à très brève échéance, plonger la Guadeloupe dans les plus terribles calamités.
</p>
<p>
Déjà la détérioration cumulative de la situation en Guadeloupe pose de façon non équivoque l'urgence de la mise en place des solutions adéquates.
Elle pose en même temps et dramatiquement la nécessité dune mobilisation générale de tous les Guadeloupéens pour la prise en main du destin de leur pays.
</p>
<p>
C'est pour toutes ces raisons, et profondément pénétrés du rôle qu'il leur appartient de jouer dans lévolution de la Guadeloupe,
qu'un certain nombre de Guadeloupéens, pour la plupart :
<ul>
<li>
- Jeunes intellectuels en début de carrière ;
</li>
<li>
- Étudiants en fin détudes ;
</li>
<li>
- Travailleurs, ont décidé de créer une organisation en vue de tout mettre en œuvre pour :
</li>
<li>
- Réaliser la révolution politique, économique et sociale de en Guadeloupe ;
</li>
<li>
- Construire une Guadeloupe nouvelle, souveraine et heureuse. Cette organisation prendra
la dénomination de Groupe dorganisation nationale de la Guadeloupe (G.O.N.G.) (..)
</li>
</ul>
</p>
<h3 class="title is-5 mt-5 has-text-light">1. LE DROIT DU PEUPLE GUADELOUPEEN A DISPOSER DE LUI-MÊME.</h3>
<p>
Le droit à lautodétermination est un droit inaliénable et imprescriptible reconnu à tous les peuples et expressément notifié par la Charte des Nations unies.
Les Guadeloupéens constituent un peuple majeur différent du peuple français. Communauté stable d'hommes avec un territoire propre, une histoire propre, une culture,
une formation psychique, une langue (en dehors du français), une mentalité, des intérêts économiques, des meurs, des besoins et des aspirations fondamentaux propres,
ils constituent aujourdhui une nation en pleine gestation certes, mais dont les composantes sont suffisamment nettes pour qu'elle revendique tous ses droits.
</p>
<p>
Il ne peut s'agir ici d'une minorité nationale pouvant s'intégrer à un ensemble national (français) plus grand. Il ny a ici rien de comparable avec les exigences propres
aux minorités nationales telles qu'on les rencontre en Corse, en Alsace, ou en Bretagne par exemple.
</p>
<p>
II en résulte que :
</p>
<h3 class="title is-5 mt-5 has-text-light">2. LA GUADELOUPE A LE DROIT A LA PLEINE SOUVERAINETE NATIONALE</h3>
<p>
C'est un principe constant sur lequel on ne saurait transiger quand bien même le peuple guadeloupéen
consentirait à hiérarchiser les étapes par lesquelles inéluctablement il atteindrait son objectif final.
</p>
<p>
Cette revendication du reste, bien que reflétant forcément les conditions objectives et subjectives
qui la déterminent à un moment donné, s'inscrit en conséquence dans un cadre national.
</p>
<p>
La lutte du peuple guadeloupéen pour le triomphe de ses aspirations est par conséquent une lutte à caractère national
pour là raison même que ces aspirations sont le reflet dun désir encore plus ou moins conscient de libération du joug oppresseur.
</p>
<h3 class="title is-5 mt-5 has-text-light">3. LA LUTTE POUR CE DROIT EST UNE LUTTE JUSTE.</h3>
<p>
Elle s'inscrit dans le grand courant de décolonisation qui constitue l'événement historique fondamental de notre époque.
</p>
<p>
Des conditions favorables existent aujourd'hui pour engager et mener à bien une telle lutte. Elles sont à la fois externes et internes :
</p>
<p>
1. Externes.
</p>
<p>
La désagrégation générale du système colonial depuis la fin de la Deuxième Guerre mondiale fait qu'aujourd'hui
les plus petits pays encore colonisés ont le droit de prétendre eux aussi rejeter le joug colonial.
</p>
<p>
<ul>
<li>
- La condamnation ferme de l'O.N.U. du colonialisme et sa résolution tendant à la libération de tous les pays colonisés dans le courant de 1963.
</li>
<li>
- Laccession du Tiers Monde à la souveraineté nationale et internationale.
</li>
<li>
- Lexistence du camp socialiste qui groupe plus du tiers de la population du globe et qui milite en faveur de l'émancipation des peuples sous tutelle.
</li>
</ul>
</p>
<p>
Enfin l'accession récente de l'Algérie (naguère «départements français») à l'indépendance de même que la transformation politique opérée
dans les Antilles britanniques et la marche triomphante de la révolution cubaine en dépit de tous les mauvais coups de ses adversaires impérialistes,
sont de nature à hâter l'évolution politique en Guadeloupe.
</p>
<p>
II. Internes.
</p>
<p>
Ces conditions sont à la fois objectives et subjectives :
</p>
<p>
La preuve est faite que le système d'appartenance à la France ne saurait résoudre les problèmes spécifiques de la Guadeloupe
car il existe un antagonisme fondamental entre les intérêts des travailleurs et consommateurs guadeloupéens d'une part et les intérêts
des trusts monopolistes français d'autre part qui détiennent à la fois, la terre, les moyens de production et de transport, le commerce et ladministration.
Il est de plus en plus acquis dans les plus larges couches que les problèmes guadeloupéens ne peuvent être résolus que par la prise en main par
le peuple guadeloupéen de tous les leviers de commande de la vie politique, économique et sociale des travailleurs est indissolublement liée à la lutte
pour la souveraineté nationale ; ces deux objectifs forment, naturellement un tout qu'il est impossible de dissocier.
</p>
<p>
<ul>
<li>
- Le cheminement progressif de l'idée autonomiste au sein des masses laborieuses.
</li>
<li>
- Le désintéressement significatif du peuple guadeloupéen pour tout ce qui concerne la politique française,
marqué notamment par un absentéisme important des électeurs lors du dernier référendum et des élections législatives
(près de 60 010 d'abstention en dépit du bourrage massif et frauduleux des urnes organisé sous le patronage officiel).
</li>
<li>
- Enfin le fait le plus déterminant est encore l'engagement total de la jeunesse quelle que soit son origine sociale,
et singulièrement de la grande masse des étudiants dans la lutte pour l'émancipation politique.
</li>
</ul>
</p>
<h3 class="title is-5 mt-5 has-text-light">4. NÉCESSITÉ D'UNE LUTTE RÉVOLUTIONNAIRE</h3>
<p>
La revendication du peuple guadeloupéen est une revendication nationale.
Elle vise avant tout à transformer l'état de choses existant dans ce qu'il a de plus fondamental et de plus essentiel.
Il sagit de transformer radicalement la Guadeloupe, de créer une Guadeloupe libre et socialiste conformément aux exigences de notre temps,
aux aspirations et aux besoins les plus impératifs de notre peuple.
</p>
<p>
La politique d'adaptation ou de réformes qui ne touchent pas aux structures en place débouche fatalement sur une impasse. Elle relève de la démagogie.
</p>
<p>
C'est donc une véritable révolution qu'il faut réaliser en Guadeloupe. (...)
</p>
<h3 class="title is-5 mt-5 has-text-light">6. LES OBJECTIFS DE LA RÉVOLUTION</h3>
<p>
Il résulte de l'analyse faite plus haut que la Révolution doit amener nécessairement la Guadeloupe à la pleine souveraineté.
</p>
<p>
Le mot d'ordre d'autonomie a constitué une étape nécessaire dans le processus de libération idéologique de la Guadeloupe
s'il a tenu compte des conditions subjectives liées dune part aux difficultés de poser de façon concrète le problème,
à un certain complexe sur les possibilités d'avenir d'une Guadeloupe totalement émancipée et, d'autre part, à certains sentiments,
d'attachement pour la France, aujourdhui ce mot d'ordre paraît insuffisant ou insuffisamment explicité en raison du fait même que
lidée a largement pénétré dans les masses et que, pris en lui-même, le mot d'autonomie couvre un champ trop vaste d'interprétations.
</p>
<p>
Pour répondre aux aspirations de notre peuple et apporter des solutions conformes aux exigences de notre temps,
la Révolution devra nécessairement déboucher sur un régime de démocratie.
</p>
<p>
Tout cela implique donc deux impératifs fondamentaux de la Révolution :
<ul>
<li>
1 °) Accession de la Guadeloupe à la pleine souveraineté ;
</li>
<li>
2° Établissement en Guadeloupe d'un régime de démocratie populaire.
</li>
</ul>
</p>
<p>
<strong class="has-text-light">La pleine souveraineté nationale</strong> <br>
La lutte révolutionnaire à pour objectif de soustraire la Guadeloupe à la tutelle coloniale et à toute tutelle étrangère.
Les Guadeloupéens veulent construire leur destin à l'exemple de tous les autres peuples et non subir un destin qu'on leur impose ;
cela implique l'édification de la Guadeloupe en un état souverain dirigé par:
</p>
<p>
<ul>
<li>
1. Une assemblée législative élue par le peuple ;
</li>
<li>
2. Un gouvernement révolutionnaire appuyé sur le peuple et contrôlé par lui.
</li>
</ul>
</p>
<p>
Ces deux pouvoirs détenant les attributs de la souveraineté nationale.
</p>
<p class="pt-3">
<strong class="has-text-light">Rapports avec la France</strong> <br>
La destruction des structures coloniales, -laccession à la pleine souveraineté, signifient l'établissement de nouveaux rapports
entre lancienne métropole et la Guadeloupe. Seule l'issue de la lutte déterminera le caractère de ces nouveaux rapports.
</p>
<p class="pt-3">
<strong class="has-text-light">La Guadeloupe dans la Caraïbe</strong> <br>
La Guadeloupe, de par sa situation même, est à vocation caraïbe. Le peuple, dans sa grande majorité,
est sensible à tout ce qui se passe dans la Caraïbe et dans l'Amérique latine ; les progrès de la révolution cubaine sont suivis avec un intérêt croissant
par les masses laborieuses. C'est la conjonction des divers colonialismes français, britannique, hollandais, espagnol et américain qui a dressé
l'artificielle barrière qui existe entre les différents peuples de la Caraïbe.
</p>
<p>
Une des tâches essentielles de la Révolution sera de combattre cette barrière et de faciliter le rapprochement entre les différents pays de la Caraïbe.
</p>
<p>
A l'égard de nos frères de la Martinique et de la Guyane, la Révolution adoptera une attitude de solidarité agissante et fera tout pour faciliter le mouvement vers l'unité.
</p>
<p>
En dépit des spécificités propres à chacun des pays, de nombreuses raisons rapprochent ces trois pays et singulièrement la Guadeloupe et la Martinique. Il est évident que
</p>
<p>
<ul>
<li>
- Dans l'immédiat : une solidarité étroite dans la lutte, une entente conjointe sur les objectifs ainsi qu'une coordination de faction
ne pourront que renforcer le mouvement d'émancipation dans ces pays et hâter le moment de leur libération ;
</li>
<li>
- Pour l'avenir : une coopération étroite de ces pays dans tous les domaines, politique, économique, culturel, ne pourra que consolider
le devenir respectif de chacun d'eux et faciliter leur édification en États modernes.
</li>
</ul>
</p>
<p>
En tout état de cause, la construction en commun, l'établissement de liens organiques entre ces pays ne peuvent être possible
et efficaces que s'ils sont réalisés par des peuples devenus libres et que si, une fois libérés, ils s'engagent dans des voies démocratiques semblables.
C'est pourquoi nous ne pouvons souscrire d'ores et déjà à telle où telle forme d'union, car ce serait établir un préalable qui pourrait par la suite
se révéler dangereux pour le devenir respectif de ces pays, dans la mesure où il pourrait faire le jeu de l'impérialisme dans la pratique.
</p>
<p>
Entre la dilution au sein dun groupement vague niant l'originalité,
les besoins et les aspirations respectifs de chaque partie et le confinement dans un particularisme national, étroit et chauvin,
il y a assurément la place pour une en- tente profonde et durable.
</p>
<p>
Les aspirations à l'unité se situent dans une perspective historique juste.
Elles traduisent le besoin de libération des masses, leur désir de mettre le maximum de forces en mouvement pour briser tous les obstacles à leur promotion.
Pour faire avancer vers l'unité, il ne suffit plus aujourdhui de se référer seulement à des facteurs subjectifs.
</p>
<p>
«L'unité entre des, pays distincts est une œuvre gigantesque qui doit se poser dans le cadre d'options idéologiques, politiques et économiques communes
correspondant aux intérêts des masses populaires».
</p>
<p>
Ouverture sur le monde <br>
Un des facteurs non négligeable de notre développement est la possibilité pour notre pays de bénéficier de l'aide technique et financière des autres pays du monde.
</p>
<p>
C'est pourquoi, en matière de politique étrangère, la Guadeloupe doit jouir d'une liberté d'action.
</p>
<p>
C'est pourquoi la Guadeloupe doit pouvoir se faire représenter auprès des principaux organismes internationaux.
</p>
<p>
L'argument répandu selon lequel la libération politique des Antilles transformerait ces pays en bases militaires au service d'un bloc, ne résiste pas à l'examen.
Il est directement inspiré par les colonialistes qui visent, en spéculant sur la volonté pacifiste de nos peuples, à mobiliser ta sensibilité antillaise au service
de leurs intérêts et à prolonger la tutelle coloniale.
</p>
<p class="pt-3">
<strong class="has-text-light">Un régime démocratique et populaire</strong>. <br>
La prise en main par notre peuple de ses propres affaires suppose lorientation de la Révolution vers un régime démocratique et populaire ;
dire l'union consciente de toute les couches de la population pour la construction de la Guadeloupe dans le cadre des principes socialistes.
</p>
<p>
Le but primordial de la Révolution doit être la transformation radicale du système économique actuel de profit en une économie de besoins: la satisfaction des besoins essentiels du peuple.
</p>
<p>
Seule une perspective socialiste peut créer les conditions adéquates à cette transformation. L'édification de la Guadeloupe en État moderne, la résolution efficace des problèmes,
le triomphe contre les obstacles de toutes sortes et les immenses difficultés ne seront possibles que dans le cadre d'un régime qui permet l'initiative, la vigilance et le contrôle du peuple.
</p>
<p>
Le développement accéléré du sens de la responsabilité collective est en l'occurrence facteur de progrès et gage de succès.
</p>
<p>
Les trois objectifs suivants constituent les principes fondamentaux de la Révolution en matière économique :
</p>
<p>
<ul>
<li>
1 - Réforme agraire assurant le contrôle du peuple sur la propriété foncière et sur la production agricole ;
</li>
<li>
2 - Refonte du commerce ;
</li>
<li>
3 - Industrialisation, source d'activités nouvelles et d'utilisation du potentiel humain de travail ;
</li>
<li>
4 - La planification scientifique et démocratique seule capable d'assurer le développement harmonieux, proportionné et rapide de l'économie
dans tous ses secteurs (agriculture, industrie, commerce, transport, pêche, etc.) constituera le principe essentiel, le moteur qui permettra d'atteindre dans toute leur ampleur ces objectifs.
</li>
</ul>
</p>
<h3 class="title is-5 mt-5 has-text-light">7. LES CONDITIONS DU SUCCÈS</h3>
<p>
Telles sont dans leurs grandes lignes les conditions de l'émancipation de notre pays.
</p>
<p>
Telles sont dans leurs grandes lignes les conditions de l'émancipation de notre pays.
Jamais les chances de succès nont été si grandes ; il faut savoir les saisir. «La force du mouvement national est fonction du degré de participation
à ce mouvement de vastes couches de la nation, du prolétariat et de la paysannerie». Toutes les difficultés, toutes les oppositions, toute résistance du colonialisme,
seront rapidement balayées quand le peuple aura compris la nécessité de s'unir sur la base de ces principes pour briser le cadre dune domination triséculaire.
</p>
<p class="pt-3">
LE G.O.N.G. - Adopté en Assemblée générale - juin 1963
</p>
</section>
<footer class="flex modal-card-foot is-justify-content-space-between has-background-dark has-text-light">
<button class="button is-danger is-outlined">
<span>Fermer</span>
<span class="icon is-small">
<ion-icon name="close-circle"></ion-icon>
</span>
</button>
<div>
<a class="has-text-light is-success" href="./assets/charte-du-gong-1963.pdf">
<button type="button" href="./assets/charte-du-gong-1963.pdf" class="button is-success is-outlined">
<span>Voir l'original</span>
<span class="icon is-small">
<ion-icon name="document"></ion-icon>
</span>
</button>
</a>
</div>
</footer>
</div>
</div>
<div id="modal-orientation" class="modal">
<div class="modal-background"></div>
<div class="modal-card">
<header class="modal-card-head has-background-dark">
<p class="modal-card-title has-text-centered has-text-light">ORIENTATION <br> ET <br> STRATEGIE <br> DE LA LUTTE <br> REVOLUTIONNAIRE <br> DU PEUPLE <br> GUADELOUPEEN</p>
<button class="delete" aria-label="close"></button>
</header>
<section class="modal-card-body has-text-justified has-background-dark has-text-light">
<p>
Au cours de la journée d'étude du 1er mai, en présence de représentants de l'AGEC, de l'A.A.C.,
le bureau provisoire a débattu des voies et moyens et du programme d'activités de lannée 1963.
Considérant l'extrême importance de connaître concrètement pourquoi nous voulons notre libération,
comment nous entendons mener notre lutte, nous avons décidé de poser quelques conclusions fondamentales qui doivent constituer
l'option politique et stratégique du militant du G.O.N.G. Nous ne pouvons aller de l'avant si nous ne tombons pas tous d'accord
sur l'attitude politique à observer, la méthode d'action de lutte à appliquer.
</p>
<p>
L'adoption de ce rapport engagera clairement tous les militants et sera leur constante référence jusqu'à
l'intervention de données exceptionnelles capables de modifier le processus de notre lutte.
</p>
<p>
Un examen très approfondi à porté sur les questions suivantes:
</p>
<p>
<ul>
<li>
1 - Lutte de masse et lutte de classe.
</li>
<li>
2 - Lutte de masse en tant que moyen de lutte révolutionnaire.
</li>
<li>
3 - La lutte révolutionnaire armée
</li>
<li>
4 - La violence libératrice.
</li>
<li>
5 - Les exemples de lutte de libération nationale.
</li>
<li>
6 - Les possibilités concrètes de la lutte en Guadeloupe.
</li>
<li>
7 - La voie révolutionnaire de la Guadeloupe.
</li>
<li>
8 - L'établissement du programme d'action du G.O.N.G.
</li>
</ul>
</p>
<p class="my-3">
Voici les conclusions qui ont été dégagées.
</p>
<p class="has-text-weight-bold">
Des points 1 et 2 : DE LA LUTTE DE MASSE EN TANT QUE MOYEN DE LUTTE DE LIBERATION NATIONALE.
</p>
<p>
La lutte de masse est l'entrée en action des plus larges couches de la population dans
une mobilisation générale pour le triomphe d'une revendication bien définie.
Elle est basée en pays sous-développé sur la recherche du mieux être et l'aspiration à la dignité.
</p>
<p>
La lutte de masse peut ère le résultat de lorganisation d'une alliance temporaire comportant des avantages
immédiats pour les deux partis : la classe ouvrière et paysanne dans une société avancée d'un côté et la bourgeoisie de lautre.
En ce qui concerne la Guadeloupe, la lutte de masse doit être le résultat de lorganisation des différentes catégories sociales
mobilisées sur un thème unitaire : la revendication nationale, un statut d'État souverain associé avec un programme révolutionnaire
qui doit tenir compte essentiellement des intérêts de l'ensemble de la population et en premier lieu des paysans et ouvriers constituant la force motrice de la révolution.
Car l'analyse dialectique permet d'affirmer que la contradiction principale est celle qui existe entre les catégories sociales du peuple dans son entier et le colonialisme
et l'impérialisme français. La résolution de cette contradiction constitue le caractère national de notre lutte de libération. Des contradictions internes entre les intérêts
de diverses catégories sociales existent, elles doivent tendre vers une solution acceptable pour tous, vers une responsabilité de plus en plus élargie aux couches
les plus nombreuses de la population guadeloupéenne. La résolution de ces contradictions internes menées sous le nom de la lutte de classe constitue le caractère démocratique
de notre lutte. Dans une stratégie générale, la lutte pour la Démocratie doit nécessairement être menée en même temps que la lutte de libération. Elle ne doit pas bloquer le travail
d'organisation nationale; bien comprise, elle ne saurait être invoquée pour rejeter les cadres nationaux capables d'apporter qualitativement et quantitativement un sérieux appoint à
notre lutte.
</p>
<p>
Chaque responsable, chaque militant doit tenir compte de cette attitude politique dans lé travail dunification et d'organisation politiques.
Nous faisons nôtre cette appréciation de Staline : «La force du mouvement national est fonction du degré de participation des vastes couches de la nation,
du prolétariat et de la paysannerie»: et cest loccasion de rappeler avec Mao le rôle des jeunes intellectuels et étudiants militant au G.O.N.G.
Ils doivent aller aux masses paysannes et ouvrières pour les mobiliser et les organiser selon ces principes. Ils seront jugés, évalués non sur leurs connaissances
livresques et techniques mais sur leur capacité à s'intégrer au peuple, à mener une action concrète, à réaliser une tâche définie dans le sens de cette orientation de lutte.
Éduquer, mobiliser, organiser, voilà la ligne à suivre.
</p>
<p class="has-text-weight-bold mt-3">
POSITION SUR UN DES MOYENS DE LUTTE DE MASSE : <br>
LE SUFFRAGE UNIVERSEL.
</p>
<p>
Le suffrage universel doit être considéré comme une arme du peuple; il l'utilise pour la défense de sa revendication nationale, pour exprimer à la face du monde,
par le choix d'un ou plusieurs représentants authentiques, sa .volonté de faire aboutir le programme défendu. Tout représentant élu démocratiquement doit obligatoirement
avoir pour tâche de combattre le système de dépendance et de faire de l'agitation pour le changement de statut politique. Dans les conditions démocratiques de vote,
le peuple doit participer aux élections, exprimer sa volonté, du moment que ces élections vont dans le sens de ses intérêt, et qu'il a la garantie du respect de ses suffrages.
Cependant il est à noter que dans le rapport actuel des forces, le colonialisme se sert le plus souvent du geste électoral du Guadeloupéen pour cautionner, grâce à la fraude
et à la force policière, les fantoches qui servent son intérêt. Le peuple doit refuser d'aller aux urnes chaque fois qu'il s'agit d'une mascarade organisée par le colonialisme,
sous le joug de ses forces armées. Bien plus, il doit supprimer le moyen doppression par un boycott systématique et organisé de telle sorte que cette action devienne
un événement politique positif pour sa lutte de libération nationale. Dans le cas d'une élection globale devant décider de l'avenir politique du peuple guadeloupéen
la position du G.O.N.G. est que la participation aux urnes ne sera valable que si toutes les garanties sont réunies par un contrôle neutre et international.
</p>
<p>
Nous voyons que lensemble de la lutte révolutionnaire ne saurait tendre ni uniquement, ni principalement à faire élire des représentants
chargés de faire de l'agitation et de poser dans les formes constitutionnelles du Maître de la Revendication Nationale.
Nous constatons que les actuels «mal élus» ne pourront à aucun moment prétendre négocier au nom du peuple guadeloupéen.
Nous constatons que tant que l'arme du suffrage universel ne sera pas contrôlée par le peuple, l'électoralisme doit être liquidé
en tant que moyen de lutte révolutionnaire de libération nationale.
</p>
<p class="has-text-weight-bold mt-3">
Des points 3 et 4 : <br>
LUTTE REVOLUTIONNAIRE ARMEE VIOLENCE LIBERATRICE
</p>
<p>
Tout le monde admet que le passage de la lutte politique à la lutte armée constitue un tournant extrêmement grave et important pour le salut national.
Lénine nous enseigne l'insurrection doit sappuyer sur l'essor révolutionnaire des masses et non sur un complot.
L'histoire nous enseigne que le colonialisme ne recule que devant des actions de force à l'échelle du peuple opprimé.
</p>
<p>
La force doit s'entendre aussi bien dans le sens matériel que moral. Elle se traduit par les rapports existant entre les avantages et les faiblesses des parties opposées.
</p>
<p>
Tenant compte des luttes des peuples qui se sont libérés du joug du colonialisme, des conditions spécifiques de la lutte en Guadeloupe,
le G.O.N.G. admet la violence libératrice spécifique comme moyen intégré de notre lutte de libération nationale.
Mais nous précisons laction terroriste au stade actuel ne ferait que défavoriser notre cause. Nous devons à tout prix éviter lextermination de nos forces naissantes.
Les interventions armées ne peuvent, en aucun cas, être déclenché avant que le peuple, soutien logistique de la Révolution, ne les ait admises et rendues possibles.
L'analyse brève et comparative des forces nous montre : l'adversaire est avantagé sur les points suivants :
</p>
<p>
<ul>
<li>
- et la qualité et la quantité des armes,
</li>
<li>
- les forces de répression bien entraînées,
</li>
<li>
- un sens élevé de lorganisation,
</li>
<li>
- une propagande largement orchestrée à l'intérieur comme à l'extérieur.
</li>
</ul>
Nos avantages :
<ul>
<li>
- Notre cause est juste.
</li>
</ul>
Nous luttons contre l'oppression politique, économique, sociale, pour le droit de nous diriger nous-mêmes «souveraineté nationale».
<ul>
<li>
- L'ensemble de notre population est d'accord pour un changement de statut.
</li>
<li>
- La lutte se passera en tout premier lieu sur un sol où vit un peuple qui en a une parfaite connaissance et soutient ses fils.
</li>
<li>
- Le soutien international des peuples libérés du colonialisme et des peuples du camp socialiste.
</li>
<li>
- Les contradictions internes de l'impérialisme.
</li>
</ul>
Notre faiblesse sur le plan matériel apparaît clairement.
Il faut noter que ces avantages du camp colonialiste portent sur des points secondaires dans une évaluation dialectique correcte,
le passage de létat d'infériorité initiale à létat de supériorité finale est possible, car nôtre force est, elle,
capable de se développer plus vite sur les points essentiels au cours même de la lutte :
<ul>
<li>
- participation des larges masses à la lutte de libération,
</li>
<li>
- Soutien de plus en plus large de l'opinion internationale.
</li>
</ul>
</p>
<p>
Ainsi apparaît une notion fondamentale à retenir, notre stratégie de lutte de libération doit être envisagée sous l'angle
d'une résistance de longue durée. Toute conception née de l'impatience visant à enlever une victoire rapide serait une grave erreur et devrait être combattue.
</p>
<p>
C'est à une VICTOIRE POLITIQUE que doivent tendre toutes nos forces.
</p>
<p>
Pourquoi victoire politique ? Toute lutte aboutit nécessairement à une négociation, elle que nous visons doit entraîner
des conséquences telles que le colonialisme se trouvera objectivement dans l'incapacité de poursuivre son œuvre d'exploitation
et de domination, des conséquences telles que notre destin soit assuré par notre responsabilité. D'où cette notion fondamentale de penser
la stratégie d'organisation du peuple comme une lutte de construction nationale. En résumé, abattre l'impérialisme, préparer les structures organisationnelles
d'une Guadeloupe libre, souveraine, moderne, heureuse. Nous voyons que les conditions de succès de notre lutte révolutionnaire anti-colonialiste, anti-impérialiste,
de libération et de construction nationales sont précisément l'existence d'un mouvement puissant et agissant. «La révolution est impossible sans lutte nationale généralisée».
</p>
<p class="has-text-weight-bold mt-3">
Point 5 : DES EXEMPLE DE LUTTE DE LIBÉRATION NATIONALE.
</p>
<p>
Nous savons que chaque révolution, chaque lutte de libération nationale est dans chacun des cas,
un phénomène unique, propre telle époque historique, à tel pays c'est-a-dire aux conditions politique, économique et physique du peuple qui mène la lutte,
cependant, nous affirmons que toutes les révolutions confirment la loi fondamentale suivante : «Il ne suffit pas, pour que là révolution ait lieu,
que les masses exploitées et opprimées soient conscience de l'impossibilité de vivre comme autrefois et réclament le changement.
Il faut, pour que la révolution ait lieu, que les exploiteurs, les colonialistes et leurs suppôts ne puissent pas vivre et gouverner comme autrefois».
</p>
<p>
Nous décidons, non pas de mener la lutte révolutionnaire de la manière du VIETNAM, de CUBA ou de l'ALGERIE,
mais de bénéficier de leur expérience de la lutte de libération, de leur aide, de leurs apports positifs a la lutte mondiale de décolonisation.
</p>
<p class="has-text-weight-bold mt-3">
Points 6 et 7 : POSSIBILITÉ CONCRÈTE DE LA LUTTE. <br>
VOIR REVOLUTIONNAIRE EN GUADELOUPE
</p>
<p>
Sur le plan politique :
</p>
<p>
L'analyse des forces politiques et sociales montre que les forces autonomistes A.G.E.G, P.G.G., M.D.A.,
syndicats, personnalités progressistes, n'ont pu jusquà présent réaliser L'UNITÉ POLITIQUE sur la base dune lutte de libération nationale,
et sur Un programme minimum à contenu social et économique entraînant l'adhésion du peuple.
</p>
<p>
Mais des possibilités concrètes dUNITE se dégagent. LA.G.E.G., force nationale offre des possibilités concrètes
d'organiser la jeunesse guadeloupéenne sur une base nationale. Elle a adopté le mot d'ordre «UNITE ET ORGANISATION» du peuple.
Les débats sur le thème de l'unité, ont malgré les divergences idéologiques, imposé à tous la lutte de libération nationale, au P.C.G., comme chez le M.D.A.
</p>
<p>
Les ouvriers guadeloupéens de Paris se regroupent au sein de lA.G.T.A.G., afin de participer au combat de libération.
</p>
<p>
En Guadeloupe, et à Paris, l'existence de groupes de jeunes révolutionnaires prouve s'il en était besoin que là crise générale progresse.
</p>
<p>
Sur le plan de la résistance physique :
</p>
<p>
La résistance physique, l'emploi de certaines formes d'actions armées, de la violence spécifique, sont dans nos possibilités.
Car pendant la guerre colonialiste menée au VIETNAM par la France, pendant son combat d'extermination menée contre le peuple Algérien,
plusieurs générations de jeunes guadeloupéens ont servi contre leurs frères coloniaux. Ils ont compris par laction,
par la vue directe que leur position auprès de loppresseur était incompatible avec leur origine, leurs aspirations.
Ils sont dans la grande majorité d'accord pour risquer leur vie en pleine conscience, pour leur dignité, leur liberté,
contre ces mêmes forces qui les avaient embrigadés d'office.
</p>
<p>
Mais il existe, aussi bien dans les partis de gauche, dans le camp des étudiants et bien entendu dans les rangs des valets
et des personnalités des hommes qui prônent un verbalisme révolutionnaire tendant à maintenir nos forces dans un pacifisme garanti.
Il nous faut combattre ces pacifistes si nous voulons faire avancer lidée dune lutte réelle, il nous faut écarter les obstacles nombreux
qu'ils accumulent pour repousser indéfiniment la réalisation des conditions objectives de la lutte de libération nationale.
</p>
<p>
Notre position est que notre peuple ne se refusera -pas à manier les armes, en avoir pour défendre son droit à la liberté
après que son sang ait été prélevé pour des raisons contraires à son intérêt. Dans le cas contraire nous mériterions notre esclavage.
</p>
<p>
La conclusion qui s'impose est que la voie guadeloupéenne est celle dune lutte politique de masse généralisée portant sur tous les plans
et dans tous les domaines, utilisant tous les moyens, y compris les actions armées, la violence spécifique, dans la mesure des possibilités concrètes de la GUADELOUPE.
</p>
<p>
Voici, condensées, les lignes générales de notre orientation et stratégie. Ces lignes sont pour l'instant propulsées et appliquées par le G.O.N.G.
Nous espérons qu'elles seront dans leur plus grande part adoptées par le mouvement national GUADELOUPEEN.
</p>
<p>
En ce qui concerne la lutte de masse :
</p>
<p>
La phase préliminaire dans cette étape pré-révolutionnaire actuelle, comporte une préparation systématique, impérieuse,
intransigeante et accélérée des cadres révolutionnaires. L'accélération de lhistoire nous impose des mesures d'urgence et
une réduction du temps de maturation. Les militants doivent rapidement apprendre les méthodes dagitation, d'organisation, de mobilisation et de direction.
</p>
<p>
Il sagit de développer et de renforcer laction pour :
</p>
<p>
<ul>
<li>
- généraliser la prise de conscience,
</li>
<li>
- poser la revendication nationale dans tous les domaines de la vie quotidienne sur les lieux de travail, dans les écoles, les églises,
les syndicats, les partis poli- tiques, les associations culturelles ou sportives, les sociétés mutualistes.
</li>
<li>
- accroître l'agitation politique afin de créer un état de tension révolutionnaire par l'édition de tracts, d'affiches, d'inscriptions sur les murs,
par lorganisation de meetings, le noyautage de manifestations officielles, placées sous l'égide du système. Créer et multiplier les organisations de masse
pour la lutte en plein jour. Mais surtout de passer à lorganisation concrète des groupes révolutionnaires, d'organisations nouvelles sur la base des catégories
des activités professionnelles en y développant l'idéologie de la lutte de libération nationale avancée par le G.O.N.G. L'apparition d'organisations suivantes telles que :
</li>
<li>
- Syndicat national,
</li>
<li>
- Mouvement national de la jeunesse,-
</li>
<li>
- Association des artisans et des petits commerçants
</li>
<li>
- Union nationale des femmes.
</li>
</ul>
</p>
<p>
L'union des paysans de petits planteurs, est certainement la tâche qui entraînera la phase du regroupement des forces guadeloupéennes
sous une direction unifiée et à forte cohésion interne en un vaste Front Uni ou mouvement national de la Guadeloupe.
</p>
<p>Sur la question de la violence :</p>
<p>
Le moment de son entrée en scène sera déterminé après une évaluation dialectique de nos forces,
selon les conditions et les besoins de la lutte. Les militants doivent faire de la propagande pour l'action armée ou de là violence afin de la préparer,
de la rendre possible, puisque nous devons y recourir.
</p>
<p>
De toute évidence il faut que les premières conditions soient remplies, ou pres- quen totalité pour qu'interviennent :
</p>
<p>
<ul>
<li>
- Grève générale,
</li>
<li>
- Le boycott du commerce et de léconomie colonialiste,
</li>
<li>
- Le boycott de l'administration colonialiste en même temps que la création d'une administration parallèle guadeloupéenne,
</li>
<li>
- le boycott des élections législatives, générales.
</li>
</ul>
</p>
<p>
Les actions armées contre les institutions et corps constitués représentant concrètement la tutelle (préfecture, gendarmerie, casernes de C.R.S....)
</p>
<p>
La liquidation des traîtres, des valets, et des représentants de la tutelle et l'INSURRECTION.
</p>
<p>
Les actions contre les institutions administratives et économiques, doivent être politiques et de violence (ex. Précédents).
</p>
<p>
A l'extérieur :
</p>
<p>
Poser de manière systématique et claire le problème GUADELOUPEEN et notre revendication nationale devant la conscience française.
</p>
<p>
Entraîner laide effective des organisations anti-colonialistes en France par des activités concrètes de soutien en plein jour.
</p>
<p>
Utiliser la solidarité agissante des nations sœurs pour l'obtention dune aide matérielle financière et technique à la révolution GUADELOUPEENNE.
Démasquer le gouvernement français devant l'opinion publique internationale quand il prétend avoir terminé la décolonisation.
</p>
<p>
Dénoncer les hommes de l'ancien Front Antillo-Guyannais qui volent la représentativité de notre peuple auprès des pays du tiers monde,
les arrivistes guadeloupéens liés à ces usurpateurs.
</p>
<p>
Préparer les techniciens à formation polymorphe pour la lutte armée, les commandos destinés à accomplir les tâches spéciales de la révolution.
</p>
<p>
La mise en route et la réussite d'une telle stratégie supposent :
</p>
<p>
<ul>
<li>
a) Une ligne politique juste : notre revendication de souveraineté nationale est juste; le content social qui sera proposé à notre peuple
tiendra compte essentiellement de ses intérêts, et aura un caractère démocratique.
</li>
<li>
b) Un bloc unitaire national : notre tâche d'unité, d'organisation de tout le peuple est réalisable car elle reflète un besoin de tous les Guadeloupéens.
</li>
<li>
c) Un plan de lutte correctement élaboré: l'engagement de tout notre peuple organisé pour se battre sur tous les plans est un gage indéniable de succès.
</li>
</ul>
</p>
<h3 class="title is-5 my-5 has-text-centered has-text-light">«NOUS VAINCRONS»</h3>
<figure class="image is-128x128 mx-auto">
<img alt="Drapeau GONG" src="./img/gong-drapeau.png">
</figure>
<p class="subtitle is-uppercase has-text-weight-bold has-text-light">
Rangeons nous sous la bannière du G.O.N.G. pour poursuivre la lutte contre l'impérialisme, contre le colonialisme français et ses valets locaux.
</p>
</section>
<footer class="flex modal-card-foot is-justify-content-space-between has-background-dark has-text-light">
<button class="button is-danger is-outlined">
<span>Fermer</span>
<span class="icon is-small">
<ion-icon name="close-circle"></ion-icon>
</span>
</button>
<div>
<a class="has-text-light is-success" href="./assets/orientation-et-strategie-de-la-lutte-revolutionnaire-du-peuple-guadeloupeen-1963.pdf">
<button type="button" class="button is-success is-outlined">
<span>Voir l'original</span>
<span class="icon is-small">
<ion-icon name="document"></ion-icon>
</span>
</button>
</a>
</div>
</footer>
</div>
</div>
<div id="modal-article" class="modal">
<div class="modal-background"></div>
<div class="modal-card">
<header class="modal-card-head has-background-dark">
<p id="article-titre" class="modal-card-title has-text-light"></p>
<button class="delete" aria-label="close"></button>
</header>
<section id="modal-card-render" class="modal-card-body has-background-dark has-text-light">
<figure class="image is-3by2 mx-auto mb-3">
<img id="article-couverture">
</figure>
<p id="article-chapeau" class="mb-5 is-italic subtitle has-text-light"></p>
<p id="article-contenu"></p>
<hr>
</section>
<section class="modal-request"></section>
<section class="has-background-dark has-border-top has-shadow-top">
<div id="article-fichiers" class="mt-2 pl-5"></div>
</section>
<footer class="modal-card-foot has-background-dark">
<button class="button is-danger is-outlined is-fullwidth">
<span>Fermer</span>
<span class="icon is-small">
<ion-icon name="close-circle"></ion-icon>
</span>
</button>
</footer>
</div>
</div>
<footer class="footer has-background-black-ter has-text-white">
<div class="content has-text-centered">
<q>
<i>
Les génération futures se doivent de continuer le combat, avec les moyens qu'elles ont maintenant à leur disposition,
et le mener à son terme, de telle sorte qu'un jour notre pays et les Guadeloupéens soient libérés des ventouses tentaculaires
et séculaires qu'est le colonialisme français.
</i>
</q>
<small>Serge GLAUDE (Co-fondateur du GONG)</small>
<hr>
<p><small>Nous contacter : <a href="mailto:gong971@proton.me">gong971@proton.me</a></small></p>
</div>
</footer>
<script src="./js/main.js"></script>
<script type="module" src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.esm.js"></script>
<script nomodule src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.js"></script>
<script type="application/ld+json">
{
"@context": "http://schema.org/",
"@type": "Organization",
"url": "https://gong.gp",
"keywords": ["gong.gp", "GONG", "G.O.N.G", "gong", "Pierre Sainton", "Sainton", "Serge Glaude", "Guadeloupe", "Gwadloup", "Gwadlup", "Karukera", "KARUKERA", "971"],
"legalName": "Groupe dOrganisation Nationale de la Guadeloupe",
"location": "Guadeloupe",
"email": "gong971@proton.me",
"slogan": "BRISER LES URNES COLONIALISTES. CONQUÉRIR LINDÉPENDANCE NATIONALE",
"founders": [
{
"@context": "http://schema.org/",
"@type": "Person",
"name": "Pierre Sainton"
},
{
"@context": "http://schema.org/",
"@type": "Person",
"name": "Serge Glaude"
}
]
}
</script>
</body>
</html>
-113
View File
@@ -1,113 +0,0 @@
document.addEventListener('DOMContentLoaded', () => {
// Functions to open and close a modal
function openModal($el) {
$el.classList.add('is-active');
}
function closeModal($el) {
$el.classList.remove('is-active');
}
function closeAllModals() {
(document.querySelectorAll('.modal') || []).forEach(($modal) => {
closeModal($modal);
});
}
// Add a click event on buttons to open a specific modal
(document.querySelectorAll('.js-modal-trigger') || []).forEach(($trigger) => {
const modal = $trigger.dataset.target;
const $target = document.getElementById(modal);
$trigger.addEventListener('click', () => {
openModal($target);
});
});
// Add a click event on various child elements to close the parent modal
(document.querySelectorAll('.modal-background, .modal-close, .modal-card-head .delete, .modal-card-foot .button') || []).forEach(($close) => {
const $target = $close.closest('.modal');
$close.addEventListener('click', () => {
closeModal($target);
});
});
// Add a keyboard event to close all modals
document.addEventListener('keydown', (event) => {
if(event.key === "Escape") {
closeAllModals();
}
});
});
function openModalFromTemplate() {
const $target = document.getElementById('modal-article');
$target.classList.add('is-active');
}
(document.querySelectorAll('.modal-background, .modal-close, .modal-card-head .delete, .modal-card-foot .button') || []).forEach(($close) => {
const $target = $close.closest('.modal');
$close.addEventListener('click', () => {
closeModal($target);
});
});
document.addEventListener('keydown', (event) => {
if(event.key === "Escape") {
closeAllModals();
}
});
function closeModal($el) {
$el.classList.remove('is-active');
}
function closeAllModals() {
(document.querySelectorAll('.modal') || []).forEach(($modal) => {
closeModal($modal);
});
}
document.addEventListener('htmx:afterSwap', function(event) {
if (event.detail.target.classList[0] === 'modal-request') {
const articleTitre = document.querySelector('#article-titre');
const articleChapeau = document.querySelector('#article-chapeau');
const articleContenu = document.querySelector('#article-contenu');
const articleCouverture = document.querySelector('#article-couverture');
const response = JSON.parse(event.detail.xhr.response);
document.querySelector('.modal-request').innerHTML = ''
articleTitre.innerHTML = response.data.attributes.titre;
articleChapeau.innerHTML = response.data.attributes.chapeau;
articleContenu.innerHTML = response.data.attributes.contenu;
articleCouverture.setAttribute("src", `https://api.gong.gp${response.data.attributes.couverture.data.attributes.url}`);
if (response.data.attributes.couverture.data.attributes.alternativeText) {
articleCouverture.setAttribute("alt", response.data.attributes.couverture.data.attributes.alternativeText);
}
const fichiers = response.data.attributes.fichiers.data;
const articleFichiers = document.querySelector('#article-fichiers');
articleFichiers.innerHTML = '';
if (fichiers) {
articleFichiers.innerHTML = '';
fichiers.forEach(fichier => {
articleFichiers.insertAdjacentHTML('beforeend', `
<p id="fichier-${fichier.id}">
<span class="icon">
<ion-icon name="document"></ion-icon>
</span>
<a class="has-text-success" href="https://api.gong.gp${fichier.attributes.url}">${fichier.attributes.name}</a>
</p>
`);
});
}
}
});
+7147
View File
File diff suppressed because it is too large Load Diff
+34
View File
@@ -0,0 +1,34 @@
{
"name": "gong.gp",
"version": "2.0.0",
"description": "GONG — Groupe d'Organisation Nationale de la Guadeloupe (site SvelteKit)",
"license": "AGPL-3.0",
"private": true,
"type": "module",
"scripts": {
"dev": "vite dev",
"build": "vite build",
"preview": "vite preview",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
},
"devDependencies": {
"@fontsource/archivo": "^5.1.0",
"@fontsource/inter": "^5.1.0",
"@sveltejs/adapter-static": "^3.0.6",
"@sveltejs/kit": "^2.15.0",
"@sveltejs/vite-plugin-svelte": "^5.0.3",
"@vite-pwa/sveltekit": "^0.6.7",
"marked": "^15.0.12",
"svelte": "^5.16.0",
"svelte-check": "^4.1.1",
"typescript": "^5.7.2",
"vite": "^6.0.6",
"vite-imagetools": "^7.0.5",
"vite-plugin-pwa": "^0.21.1"
},
"dependencies": {
"gsap": "^3.12.5",
"lenis": "^1.1.18"
}
}
-6
View File
@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://gong.gp</loc>
</url>
</urlset>
+12
View File
@@ -0,0 +1,12 @@
// See https://svelte.dev/docs/kit/types#app.d.ts
declare global {
namespace App {
// interface Error {}
// interface Locals {}
// interface PageData {}
// interface PageState {}
// interface Platform {}
}
}
export {};
+21
View File
@@ -0,0 +1,21 @@
<!doctype html>
<html lang="%lang%" class="has-no-js">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" href="%sveltekit.assets%/favicon.ico" sizes="32x32" />
<link rel="icon" href="%sveltekit.assets%/icon.png" type="image/png" sizes="192x192" />
<link rel="apple-touch-icon" href="%sveltekit.assets%/apple-icon.png" />
<link rel="manifest" href="%sveltekit.assets%/manifest.webmanifest" />
<meta name="theme-color" content="#0D0D0D" />
<link rel="preload" href="%sveltekit.assets%/fonts/archivo-latin-700-normal.woff2" as="font" type="font/woff2" crossorigin />
<link rel="stylesheet" href="%sveltekit.assets%/fonts/fonts.css" />
<!-- Anti-FOUC thème : pose .js / .light-theme avant le premier paint (CSP script-src 'self') -->
<script src="%sveltekit.assets%/theme.js"></script>
%sveltekit.head%
</head>
<body data-sveltekit-preload-data="hover">
<div style="display: contents">%sveltekit.body%</div>
<script src="%sveltekit.assets%/registerSW.js"></script>
</body>
</html>
+10
View File
@@ -0,0 +1,10 @@
import type { Handle } from '@sveltejs/kit';
import { localeFromPath } from '$lib/i18n';
// Injecte l'attribut lang correct dans app.html selon la locale de la route.
export const handle: Handle = async ({ event, resolve }) => {
const lang = localeFromPath(event.url.pathname);
return resolve(event, {
transformPageChunk: ({ html }) => html.replace('%lang%', lang)
});
};
+15
View File
@@ -0,0 +1,15 @@
// Déclarations vite-imagetools. Ce fichier NE DOIT PAS être un module
// (aucun import/export au niveau racine) pour que les `declare module` soient globaux.
declare module '*&as=picture' {
const value: {
sources: Record<string, string>;
img: { src: string; w: number; h: number };
};
export default value;
}
declare module '*&as=metadata' {
const value: { src: string; width: number; height: number; format: string };
export default value;
}
+54
View File
@@ -0,0 +1,54 @@
<script lang="ts">
// Fil d'Ariane visible. Le JSON-LD BreadcrumbList est émis en parallèle par <Seo>.
interface Props {
items: { name: string; path: string }[];
}
let { items }: Props = $props();
</script>
<nav class="fil" aria-label="Fil d'Ariane">
<ol>
{#each items as item, i (item.path)}
<li>
{#if i < items.length - 1}
<a href={item.path} class="no-underline">{item.name}</a>
<span class="fil__sep" aria-hidden="true">/</span>
{:else}
<span aria-current="page">{item.name}</span>
{/if}
</li>
{/each}
</ol>
</nav>
<style>
.fil {
font-size: 0.82rem;
color: var(--muted);
}
.fil ol {
list-style: none;
display: flex;
flex-wrap: wrap;
gap: 0.4rem;
margin: 0 0 var(--space-3);
padding: 0;
}
.fil li {
display: inline-flex;
gap: 0.4rem;
align-items: center;
}
.fil a {
color: var(--muted);
}
.fil a:hover {
color: var(--accent);
}
.fil [aria-current='page'] {
color: var(--creme);
}
.fil__sep {
color: var(--muted-fort);
}
</style>
+189
View File
@@ -0,0 +1,189 @@
<script lang="ts">
import Icon from './Icon.svelte';
import { contact } from '$lib/data/gong';
const sections = [
{
titre: 'Le mouvement',
liens: [
{ href: '/histoire/', label: 'Histoire' },
{ href: '/me-67/', label: 'Mé 67 (1967)' },
{ href: '/proces-1968/', label: 'Procès de 1968' },
{ href: '/militants/', label: 'Militants & fondateurs' },
{ href: '/ideologie/', label: 'Idéologie' },
{ href: '/heritage/', label: 'Héritage' }
]
},
{
titre: 'Documents',
liens: [
{ href: '/archives/', label: 'Archives — Gong-Information' },
{ href: '/charte/', label: 'Charte de 1963' },
{ href: '/orientation/', label: 'Orientation & stratégie' },
{ href: '/publications/', label: 'Publications' },
{ href: '/sources/', label: 'Sources & bibliographie' },
{ href: '/faq/', label: "Qu'est-ce que le GONG ?" }
]
},
{
titre: 'Le site',
liens: [
{ href: '/actualites/', label: 'Actualités' },
{ href: '/contact/', label: 'Contact' },
{ href: '/mentions-legales/', label: 'Mentions légales' }
]
}
];
const annee = new Date().getFullYear();
</script>
<footer class="site-footer">
<div class="flag-bar" aria-hidden="true"></div>
<div class="container site-footer__inner">
<blockquote class="site-footer__cite">
<p lang="fr">
« Les générations futures se doivent de continuer le combat, avec les moyens qu'elles ont
maintenant à leur disposition, et le mener à son terme, de telle sorte qu'un jour notre pays
et les Guadeloupéens soient libérés des ventouses tentaculaires et séculaires qu'est le
colonialisme français. »
</p>
<cite>Serge Glaude — co-fondateur du GONG</cite>
</blockquote>
<nav class="site-footer__grid" aria-label="Plan du site">
{#each sections as s (s.titre)}
<div>
<h2 class="site-footer__title">{s.titre}</h2>
<ul>
{#each s.liens as l (l.href)}
<li><a href={l.href} class="no-underline">{l.label}</a></li>
{/each}
</ul>
</div>
{/each}
<div>
<h2 class="site-footer__title">Nous suivre</h2>
<div class="site-footer__social">
<a href="mailto:{contact.email}" class="no-underline" aria-label="E-mail (ProtonMail)">
<Icon name="mail" /> <span>{contact.email}</span>
</a>
<a
href={contact.bokante}
rel="external noopener noreferrer"
target="_blank"
class="no-underline"
aria-label="Bokante (réseau social)"
>
<Icon name="globe" /> <span>Bokante</span>
</a>
<a
href={contact.gade}
rel="external noopener noreferrer"
target="_blank"
class="no-underline"
aria-label="Gade (vidéos PeerTube)"
>
<Icon name="video" /> <span>Gade — vidéos</span>
</a>
</div>
</div>
</nav>
<div class="site-footer__federe">
<p>
<img src="/img/gong.png" alt="" width="28" height="28" />
Un site opéré par
<a href="https://o-k-i.net" rel="external noopener noreferrer" target="_blank">ORGANISATION KA INTERNATIONALE</a>
· <span lang="gcf">An mémwè a tout sé moun-la ki goumé.</span>
</p>
<p class="site-footer__legal">
© {annee} GONG — Contenu sous licence
<a href="https://www.gnu.org/licenses/agpl-3.0.html" rel="external noopener noreferrer" target="_blank">AGPL-3.0</a>.
<a href="/mentions-legales/" class="no-underline">Mentions légales</a>
</p>
</div>
</div>
</footer>
<style>
.site-footer {
margin-top: var(--space-6);
background: var(--noir-profond);
border-top: 1px solid var(--line);
}
.site-footer__inner {
padding-block: var(--space-4);
display: grid;
gap: var(--space-4);
}
.site-footer__cite {
margin: 0;
max-width: 62ch;
border-left: 4px solid var(--accent);
padding-left: var(--space-2);
}
.site-footer__cite p {
font-style: italic;
color: var(--muted);
}
.site-footer__cite cite {
font-style: normal;
font-weight: 600;
color: var(--creme);
font-size: 0.9rem;
}
.site-footer__grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: var(--space-3);
}
.site-footer__title {
font-size: 0.78rem;
letter-spacing: 0.08em;
color: var(--muted-fort);
margin-bottom: 0.6rem;
}
.site-footer__grid ul {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: 0.4rem;
}
.site-footer__grid a {
color: var(--muted);
font-size: 0.92rem;
}
.site-footer__grid a:hover {
color: var(--accent);
}
.site-footer__social {
display: grid;
gap: 0.55rem;
}
.site-footer__social a {
display: inline-flex;
align-items: center;
gap: 0.5rem;
color: var(--muted);
font-size: 0.9rem;
}
.site-footer__social a:hover {
color: var(--accent);
}
.site-footer__federe {
border-top: 1px solid var(--line);
padding-top: var(--space-3);
font-size: 0.85rem;
color: var(--muted);
}
.site-footer__federe img {
display: inline;
vertical-align: middle;
margin-right: 0.3rem;
}
.site-footer__legal {
margin: 0.4rem 0 0;
font-size: 0.8rem;
}
</style>
+24
View File
@@ -0,0 +1,24 @@
<script lang="ts">
// Icône du sprite GONG. <Icon name="ka" /> → <use href="/icons.svg#ka">.
// Décoratif par défaut (aria-hidden) ; passer `label` pour une icône signifiante.
import { asset } from '$app/paths';
interface Props {
name: string;
label?: string;
size?: string;
class?: string;
}
let { name, label, size = '1.25em', class: cls = '' }: Props = $props();
</script>
<svg
class="icon {cls}"
style:width={size}
style:height={size}
role={label ? 'img' : undefined}
aria-label={label}
aria-hidden={label ? undefined : 'true'}
>
<use href={asset(`/icons.svg#${name}`)} />
</svg>
+67
View File
@@ -0,0 +1,67 @@
<script lang="ts">
// Titre cinétique : révélation mot à mot au scroll, cadence syncopée gwoka.
// Split par MOTS (jamais par caractères — apostrophes). Le texte reste intégral
// pour les lecteurs d'écran ; l'animation ne s'active que sous html.has-js + no-preference.
import { syncopatedDelay } from '$lib/motion/tokens';
import type { Action } from 'svelte/action';
interface Props {
text: string;
as?: 'h1' | 'h2' | 'h3';
id?: string;
class?: string;
}
let { text, as = 'h2', id, class: cls = '' }: Props = $props();
const mots = $derived(text.split(' '));
const kinetic: Action = (node) => {
const reduce = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
if (reduce) {
node.classList.add('is-in');
return;
}
const io = new IntersectionObserver(
(entries) => {
for (const e of entries) {
if (e.isIntersecting) {
node.classList.add('is-in');
io.unobserve(node);
}
}
},
{ threshold: 0.4 }
);
io.observe(node);
return { destroy: () => io.disconnect() };
};
</script>
<svelte:element this={as} {id} class="kinetic {cls}" use:kinetic>
{#each mots as mot, i (i)}
<span class="kinetic__w"><span class="kinetic__i" style:--d="{syncopatedDelay(i)}ms">{mot}</span></span>{' '}
{/each}
</svelte:element>
<style>
.kinetic__w {
display: inline-block;
overflow: hidden;
vertical-align: top;
}
.kinetic__i {
display: inline-block;
}
:global(html.has-js) .kinetic:not(.is-in) .kinetic__i {
transform: translateY(105%);
}
.kinetic.is-in .kinetic__i {
transform: translateY(0);
transition: transform var(--dur-mesure) var(--ease-ka);
transition-delay: var(--d, 0ms);
}
@media (prefers-reduced-motion: reduce) {
:global(html.has-js) .kinetic .kinetic__i {
transform: none;
}
}
</style>
+269
View File
@@ -0,0 +1,269 @@
<script lang="ts">
import { page } from '$app/state';
import Icon from './Icon.svelte';
const primaires = [
{ href: '/histoire/', label: 'Histoire' },
{ href: '/me-67/', label: 'Mé 67' },
{ href: '/militants/', label: 'Militants' },
{ href: '/ideologie/', label: 'Idéologie' },
{ href: '/heritage/', label: 'Héritage' },
{ href: '/archives/', label: 'Archives' },
{ href: '/actualites/', label: 'Actualités' }
];
const secondaires = [
{ href: '/proces-1968/', label: 'Procès de 1968' },
{ href: '/publications/', label: 'Publications' },
{ href: '/charte/', label: 'Charte de 1963' },
{ href: '/orientation/', label: 'Orientation & stratégie' },
{ href: '/sources/', label: 'Sources' },
{ href: '/faq/', label: "Qu'est-ce que le GONG ?" },
{ href: '/contact/', label: 'Contact' }
];
let menuOuvert = $state(false);
let theme = $state<'dark' | 'light'>('dark');
const chemin = $derived(page.url.pathname);
function actif(href: string): boolean {
return href === '/' ? chemin === '/' : chemin.startsWith(href);
}
$effect(() => {
theme = document.documentElement.classList.contains('light-theme') ? 'light' : 'dark';
});
function basculerTheme() {
const el = document.documentElement;
const clair = el.classList.toggle('light-theme');
theme = clair ? 'light' : 'dark';
try {
localStorage.setItem('gong-theme', clair ? 'light' : 'dark');
} catch {
/* localStorage indisponible */
}
}
// Ferme le menu à chaque changement de route.
$effect(() => {
void chemin;
menuOuvert = false;
});
</script>
<svelte:window
onkeydown={(e) => {
if (e.key === 'Escape') menuOuvert = false;
}}
/>
<header class="nav">
<div class="nav__bar container">
<a href="/" class="nav__brand no-underline" aria-label="GONG — accueil">
<img src="/img/gong.png" alt="" width="40" height="40" class="nav__logo" />
<span class="nav__name">GONG</span>
</a>
<nav class="nav__primary" aria-label="Navigation principale">
{#each primaires as l (l.href)}
<a href={l.href} class="nav__link no-underline" aria-current={actif(l.href) ? 'page' : undefined}>
{l.label}
</a>
{/each}
</nav>
<div class="nav__actions">
<button
class="nav__icon-btn"
onclick={basculerTheme}
aria-label={theme === 'light' ? 'Passer au thème sombre' : 'Passer au thème clair'}
>
<Icon name={theme === 'light' ? 'moon' : 'sun'} />
</button>
<button
class="nav__icon-btn nav__menu-btn"
onclick={() => (menuOuvert = !menuOuvert)}
aria-expanded={menuOuvert}
aria-controls="menu-panneau"
aria-label="Menu"
>
<Icon name={menuOuvert ? 'close' : 'menu'} />
</button>
</div>
</div>
<div class="flag-bar" aria-hidden="true"></div>
</header>
{#if menuOuvert}
<button
class="nav__scrim"
aria-label="Fermer le menu"
onclick={() => (menuOuvert = false)}
tabindex="-1"
></button>
{/if}
<div id="menu-panneau" class="nav__panel" class:open={menuOuvert} aria-hidden={!menuOuvert}>
<nav aria-label="Toutes les sections">
<p class="nav__group-title">Le mouvement</p>
{#each primaires as l (l.href)}
<a href={l.href} class="nav__panel-link no-underline" aria-current={actif(l.href) ? 'page' : undefined}>
{l.label}
</a>
{/each}
<p class="nav__group-title">Documents & mémoire</p>
{#each secondaires as l (l.href)}
<a href={l.href} class="nav__panel-link no-underline" aria-current={actif(l.href) ? 'page' : undefined}>
{l.label}
</a>
{/each}
</nav>
</div>
<style>
.nav {
position: sticky;
top: 0;
z-index: 100;
background: color-mix(in srgb, var(--noir) 92%, transparent);
backdrop-filter: blur(8px);
border-bottom: 1px solid var(--line);
}
.nav__bar {
display: flex;
align-items: center;
gap: var(--space-3);
height: var(--nav-h);
}
.nav__brand {
display: inline-flex;
align-items: center;
gap: 0.6rem;
color: var(--creme);
flex: none;
}
.nav__logo {
width: 40px;
height: 40px;
}
.nav__name {
font-family: var(--font-display);
font-weight: 900;
font-size: 1.4rem;
letter-spacing: 0.02em;
}
.nav__primary {
display: none;
align-items: center;
gap: 0.35rem;
margin-left: auto;
}
.nav__link {
font-family: var(--font-display);
font-weight: 700;
font-size: 0.82rem;
text-transform: uppercase;
letter-spacing: 0.03em;
color: var(--muted);
padding: 0.45rem 0.6rem;
border-radius: var(--radius-sm);
transition: color var(--dur-tanbou) var(--ease-ka);
}
.nav__link:hover,
.nav__link[aria-current='page'] {
color: var(--creme);
}
.nav__link[aria-current='page'] {
box-shadow: inset 0 -2px 0 var(--accent);
}
.nav__actions {
display: flex;
align-items: center;
gap: 0.25rem;
margin-left: auto;
}
.nav__primary + .nav__actions {
margin-left: 0;
}
.nav__icon-btn {
display: inline-grid;
place-items: center;
width: 42px;
height: 42px;
background: transparent;
border: 1px solid transparent;
border-radius: var(--radius-sm);
color: var(--creme);
cursor: pointer;
transition:
border-color var(--dur-tanbou) var(--ease-ka),
color var(--dur-tanbou) var(--ease-ka);
}
.nav__icon-btn:hover {
border-color: var(--line);
color: var(--accent);
}
.nav__scrim {
position: fixed;
inset: 0;
z-index: 98;
background: rgba(0, 0, 0, 0.55);
border: 0;
cursor: pointer;
}
.nav__panel {
position: fixed;
top: 0;
right: 0;
z-index: 99;
width: min(88vw, 340px);
height: 100dvh;
overflow-y: auto;
padding: calc(var(--nav-h) + var(--space-3)) var(--space-3) var(--space-4);
background: var(--noir-profond);
border-left: 1px solid var(--line);
transform: translateX(100%);
transition: transform var(--dur-mesure) var(--ease-ka);
}
.nav__panel.open {
transform: translateX(0);
}
.nav__group-title {
font-family: var(--font-display);
text-transform: uppercase;
font-size: 0.72rem;
letter-spacing: 0.08em;
color: var(--muted-fort);
margin: var(--space-3) 0 0.5rem;
}
.nav__panel-link {
display: block;
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
font-size: 0.95rem;
color: var(--creme);
padding: 0.65rem 0.5rem;
border-bottom: 1px solid var(--line);
}
.nav__panel-link:hover,
.nav__panel-link[aria-current='page'] {
color: var(--accent);
}
@media (min-width: 960px) {
.nav__primary {
display: flex;
}
.nav__actions {
margin-left: 0;
}
.nav__menu-btn {
display: none;
}
.nav__panel,
.nav__scrim {
display: none;
}
}
</style>
+59
View File
@@ -0,0 +1,59 @@
<script lang="ts">
// Zone A « Résumé immédiat » — critique pour Google AI Overview.
// Réponse directe en tête (lead) + points essentiels. Rendu en <aside> sémantique.
interface Props {
lead: string;
points?: string[];
titre?: string;
}
let { lead, points = [], titre = 'En résumé' }: Props = $props();
</script>
<aside class="resume" aria-label={titre}>
<p class="resume__titre"><span class="flag-chip" aria-hidden="true"></span> {titre}</p>
<p class="resume__lead">{lead}</p>
{#if points.length}
<ul class="resume__points">
{#each points as p (p)}
<li>{p}</li>
{/each}
</ul>
{/if}
</aside>
<style>
.resume {
background: var(--card-bg);
border: 1px solid var(--line);
border-left: 4px solid var(--vert-gong);
border-radius: var(--radius-md);
padding: var(--space-3);
margin-block: var(--space-3);
}
.resume__titre {
display: flex;
align-items: center;
gap: 0.6rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.05em;
font-size: 0.8rem;
color: var(--muted-fort);
margin-bottom: 0.6rem;
}
.resume__lead {
font-size: 1.12rem;
line-height: 1.5;
color: var(--creme);
margin-bottom: 0.6rem;
}
.resume__points {
margin: 0;
padding-left: 1.1rem;
display: grid;
gap: 0.3rem;
}
.resume__points li {
color: var(--muted);
}
</style>
@@ -0,0 +1,58 @@
<script lang="ts">
// Barre de progression de lecture. rAF + écriture DOM directe (jamais d'état réactif par frame).
// Gradient drapeau vert→rouge. role=progressbar. Coupée en reduced-motion via la gate CSS.
import { onMount } from 'svelte';
let bar: HTMLDivElement;
onMount(() => {
let raf = 0;
let ticking = false;
const update = () => {
const h = document.documentElement.scrollHeight - window.innerHeight;
const p = h > 0 ? Math.min(1, Math.max(0, window.scrollY / h)) : 0;
bar.style.transform = `scaleX(${p})`;
bar.setAttribute('aria-valuenow', String(Math.round(p * 100)));
ticking = false;
};
const onScroll = () => {
if (!ticking) {
ticking = true;
raf = requestAnimationFrame(update);
}
};
update();
window.addEventListener('scroll', onScroll, { passive: true });
window.addEventListener('resize', onScroll, { passive: true });
return () => {
cancelAnimationFrame(raf);
window.removeEventListener('scroll', onScroll);
window.removeEventListener('resize', onScroll);
};
});
</script>
<div
bind:this={bar}
class="progress"
role="progressbar"
aria-label="Progression de lecture"
aria-valuemin="0"
aria-valuemax="100"
aria-valuenow="0"
></div>
<style>
.progress {
position: fixed;
top: 0;
left: 0;
z-index: 101;
height: 3px;
width: 100%;
transform: scaleX(0);
transform-origin: left;
background: linear-gradient(to right, var(--vert-gong), var(--jaune-sable), var(--rouge-gong));
pointer-events: none;
}
</style>
+30
View File
@@ -0,0 +1,30 @@
<script lang="ts">
// Titre de section avec ornement flag-chip + révélation cinétique (mot à mot).
import KineticText from './KineticText.svelte';
interface Props {
title: string;
as?: 'h2' | 'h3';
id?: string;
class?: string;
}
let { title, as = 'h2', id, class: cls = '' }: Props = $props();
</script>
<div class="section-title {cls}">
<span class="flag-chip" aria-hidden="true"></span>
<KineticText text={title} {as} {id} />
</div>
<style>
.section-title {
margin-bottom: var(--space-3);
}
.section-title .flag-chip {
margin-bottom: 0.7rem;
}
.section-title :global(h2),
.section-title :global(h3) {
margin: 0;
}
</style>
+122
View File
@@ -0,0 +1,122 @@
<script lang="ts">
// SEO / AI-Overview : meta + OpenGraph + Twitter + hreflang + JSON-LD @graph.
// Organization + WebSite sont toujours présents ; les pages ajoutent leurs nœuds
// (WebPage, BreadcrumbList, Person, Event, Article, FAQPage…) via `graph`.
import { SITE } from '$lib/data/gong';
interface Props {
title: string;
description: string;
path: string; // chemin canonique, ex. '/me-67/'
type?: string; // og:type
image?: string; // chemin absolu ou relatif au site
imageAlt?: string;
publishedTime?: string;
modifiedTime?: string;
/** Nœuds schema.org additionnels, fusionnés dans @graph. */
graph?: Record<string, unknown>[];
/** Fil d'Ariane : [{name, path}]. Génère un BreadcrumbList. */
breadcrumb?: { name: string; path: string }[];
}
let {
title,
description,
path,
type = 'website',
image = '/gong-logo.png',
imageAlt = 'Logo du GONG',
publishedTime,
modifiedTime,
graph = [],
breadcrumb
}: Props = $props();
const base = SITE.url;
const canonical = $derived(base + path);
const imageAbs = $derived(image.startsWith('http') ? image : base + image);
const fullTitle = $derived(path === '/' ? title : `${title} | ${SITE.nom}`);
const orgNode = {
'@type': ['Organization', 'PoliticalParty'],
'@id': `${base}/#organization`,
name: SITE.nomComplet,
alternateName: 'GONG',
url: base,
slogan: SITE.slogan,
foundingDate: '1963-06-23',
dissolutionDate: '1968',
foundingLocation: 'Paris, France',
areaServed: 'Guadeloupe',
logo: { '@type': 'ImageObject', url: `${base}/gong-logo.png`, width: 512, height: 512 },
founder: [
{ '@type': 'Person', name: 'Pierre Sainton' },
{ '@type': 'Person', name: 'Serge Glaude' }
],
sameAs: ['https://fr.wikipedia.org/wiki/Groupe_d%27organisation_nationale_de_la_Guadeloupe']
};
const siteNode = {
'@type': 'WebSite',
'@id': `${base}/#website`,
url: base,
name: SITE.nom,
description: SITE.description,
inLanguage: 'fr-FR',
publisher: { '@id': `${base}/#organization` }
};
const breadcrumbNode = $derived(
breadcrumb && breadcrumb.length
? [
{
'@type': 'BreadcrumbList',
'@id': `${canonical}#breadcrumb`,
itemListElement: breadcrumb.map((b, i) => ({
'@type': 'ListItem',
position: i + 1,
name: b.name,
...(i < breadcrumb.length - 1 ? { item: base + b.path } : {})
}))
}
]
: []
);
const jsonLd = $derived(
JSON.stringify({ '@context': 'https://schema.org', '@graph': [orgNode, siteNode, ...breadcrumbNode, ...graph] })
);
</script>
<svelte:head>
<title>{fullTitle}</title>
<meta name="description" content={description} />
<meta name="author" content={SITE.nomComplet} />
<meta name="robots" content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" />
<link rel="canonical" href={canonical} />
<link rel="alternate" hreflang="fr" href={canonical} />
<link rel="alternate" hreflang="x-default" href={canonical} />
<meta property="og:title" content={fullTitle} />
<meta property="og:description" content={description} />
<meta property="og:type" content={type} />
<meta property="og:url" content={canonical} />
<meta property="og:site_name" content={SITE.nomComplet} />
<meta property="og:locale" content="fr_FR" />
<meta property="og:image" content={imageAbs} />
<meta property="og:image:alt" content={imageAlt} />
<meta property="og:image:width" content="512" />
<meta property="og:image:height" content="512" />
{#if publishedTime}<meta property="article:published_time" content={publishedTime} />{/if}
{#if modifiedTime}<meta property="article:modified_time" content={modifiedTime} />{/if}
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:site" content={SITE.twitter} />
<meta name="twitter:creator" content={SITE.twitter} />
<meta name="twitter:title" content={fullTitle} />
<meta name="twitter:description" content={description} />
<meta name="twitter:image" content={imageAbs} />
<meta name="twitter:image:alt" content={imageAlt} />
<!-- eslint-disable-next-line svelte/no-at-html-tags — JSON-LD first-party -->
{@html `<script type="application/ld+json">${jsonLd.replace(/<\//g, '<\\/')}</` + `script>`}
</svelte:head>
+86
View File
@@ -0,0 +1,86 @@
<script lang="ts">
// Chronologie verticale accessible (liste ordonnée). Jalons majeurs mis en exergue.
// Révélation au scroll en cascade gwoka ; contenu complet sans JS.
import { reveal } from '$lib/motion/reveal';
import type { EvenementChrono } from '$lib/data/types';
interface Props {
evenements: EvenementChrono[];
}
let { evenements }: Props = $props();
</script>
<ol class="timeline">
{#each evenements as e, i (e.date + e.evenement)}
<li class="timeline__item" class:is-major={e.majeur} use:reveal={i}>
<span class="timeline__dot" aria-hidden="true"></span>
<div class="timeline__body">
<p class="timeline__date">{e.date}</p>
<h3 class="timeline__event">{e.evenement}</h3>
<p class="timeline__ctx">{e.contexte}</p>
</div>
</li>
{/each}
</ol>
<style>
.timeline {
list-style: none;
margin: 0;
padding: 0;
position: relative;
}
.timeline::before {
content: '';
position: absolute;
left: 7px;
top: 6px;
bottom: 6px;
width: 2px;
background: var(--line);
}
.timeline__item {
position: relative;
padding: 0 0 var(--space-3) var(--space-4);
}
.timeline__dot {
position: absolute;
left: 0;
top: 6px;
width: 16px;
height: 16px;
border-radius: 2px;
background: var(--noir);
border: 2px solid var(--muted-fort);
transform: rotate(45deg);
}
.is-major .timeline__dot {
border-color: var(--accent);
background: var(--accent);
box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 22%, transparent);
}
.timeline__date {
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
font-size: 0.82rem;
letter-spacing: 0.05em;
color: var(--accent);
margin: 0 0 0.2rem;
}
.timeline__event {
font-size: 1.05rem;
text-transform: none;
letter-spacing: 0;
margin: 0 0 0.3rem;
}
.is-major .timeline__event {
font-size: 1.25rem;
text-transform: uppercase;
}
.timeline__ctx {
color: var(--muted);
margin: 0;
font-size: 0.96rem;
}
</style>
+753
View File
@@ -0,0 +1,753 @@
// ============================================================================
// DOSSIER DOCUMENTAIRE GONG — source unique de vérité (contenu figé, sourcé).
// Repris à l'identique de doc2sveltekit-transition/gong.py (compilation 2026-07-24).
// « Données compilées à partir de sources académiques, journalistiques et archivistiques. »
// ============================================================================
import type {
Membre,
EvenementChrono,
Influence,
EvolutionMotOrdre,
Publication,
MouvementHeritage,
OeuvreCulturelle,
Source,
Responsable
} from './types';
export const metadata = {
titre: "Le GONG — Groupe d'Organisation Nationale de la Guadeloupe",
sousTitre: 'Dossier documentaire complet',
dateCompilation: '2026-07-24',
avertissement:
'Données compilées à partir de sources académiques, journalistiques et archivistiques. Toutes les informations sont sourcées.',
sourcesPrincipales: [
"Wikipedia FR/EN — Groupe d'organisation nationale de la Guadeloupe",
"Sylvain Mary, « Briser les urnes colonialistes. Conquérir l'indépendance nationale » (OpenEdition, 2021)",
"Michelle Zancarini-Fournel, « Pierre Sainton : disparition d'une figure emblématique » (Contretemps, 2018)",
"Lutte Ouvrière, « À propos du procès devant la cour de sécurité : qu'est-ce que le GONG ? » (1968)",
'LDH France, « Guadeloupe, Mai 1967, un drame français »',
'Hypothèses.org, « Mé 1967 en Guadeloupe : un massacre colonial longtemps occulté »',
'France Archives — Opération GONG du 4 juin 1967',
'Serge Glaude, « Le GONG c quoi ? » (2017)',
"Pierre Sainton, « Vie et survie d'un fils de Guadeloupe » (Éditions Nestor, 2008)",
"Archives nationales, 5W/734, arrêt n°838 de la Cour de sûreté de l'État"
]
};
export const presentation = {
nomComplet: "Groupe d'Organisation Nationale de la Guadeloupe",
sigle: 'GONG',
nature: 'Organisation politique indépendantiste et anticolonialiste',
dateFondation: '23 juin 1963',
lieuFondation: 'Paris, France',
dateDissolution: '1968 (de facto, suite au procès et à la répression)',
territoire: 'Guadeloupe (et diaspora guadeloupéenne en métropole)',
slogan: "Briser les urnes colonialistes. Conquérir l'indépendance nationale",
contexteFondation:
"Fondé dans la clandestinité après la dissolution du Front antillo-guyanais pour l'autonomie et après la mort « accidentelle » d'Abert Béville dans le crash de l'avion qui le conduisait en Guadeloupe en juin 1962. Les fondateurs sont d'anciens militants de l'Association générale des étudiants guadeloupéens (AGEG/AGEEG) résidant en métropole.",
installationGuadeloupe:
"Le GONG s'installe légalement en Guadeloupe le 30 mai 1964, lors d'un discours de Pierre Sainton sur la stèle de Delgrès au Matouba (Saint-Claude).",
effectifs: "Quelques dizaines de membres actifs",
soutiensInternationaux: [
'Front de Libération Nationale algérien (FLN)',
"Parti communiste belge prochinois (dirigé par Jacques Grippa) — soutien logistique pour l'impression du journal",
'Mouvement de la Tricontinentale',
"OLAS (Organisation de solidarité des peuples d'Asie, d'Afrique et d'Amérique latine)"
]
};
export const ideologie = {
courantPrincipal: 'Marxisme-léninisme (tendance maoïste), tiers-mondisme, anticolonialisme',
influences: [
{ penseur: 'Karl Marx / Lénine', apport: "Théorie marxiste comme guide de l'action révolutionnaire" },
{ penseur: 'Frantz Fanon', apport: 'Analyse du colonialisme, violence libératrice, décolonisation' },
{ penseur: 'Kwame Nkrumah', apport: 'Panafricanisme, unité des peuples colonisés' },
{ penseur: 'Che Guevara', apport: 'Théorie de la guérilla, révolution continentale' },
{ penseur: 'Fidel Castro', apport: 'Révolution cubaine comme modèle caribéen' },
{ penseur: 'Mao Zedong', apport: 'Révolution paysanne, guerre populaire prolongée' },
{ penseur: 'Théories de la dépendance', apport: 'Analyse néocoloniale des économies périphériques' }
] satisfies Influence[],
objectifs: [
"Indépendance nationale de la Guadeloupe (rupture totale avec la France)",
'Révolution socialiste (transformation des structures économiques)',
'Réforme agraire (redistribution des terres)',
"Industrialisation (développement d'une économie autonome)",
'Unité antillaise (rapprochement avec les autres îles de la Caraïbe)',
'Solidarité tiers-mondiste (intégration dans le mouvement des non-alignés)'
],
evolutionMotsOrdre: [
{ periode: '1960-1963', motOrdre: 'Autogestion, puis Autonomie', contexte: 'Période étudiante (AGEG)' },
{
periode: '1963-1966',
motOrdre: 'Abolition du statut colonial, Libération nationale',
contexte: 'Fondation du GONG'
},
{
periode: '1966-1967',
motOrdre: 'Indépendance nationale',
contexte: "Après la Tricontinentale et l'éclatement du Front antillo-guyanais"
},
{
periode: '1967',
motOrdre: "Briser les urnes colonialistes, Conquérir l'indépendance nationale",
contexte: 'Campagne électorale législative de mars 1967'
}
] satisfies EvolutionMotOrdre[],
autoDefinition:
"Le GONG se définit comme « le pilote du peuple guadeloupéen » incarnant « l'idéologie marxiste-léniniste ». Il se prétend « parti des ouvriers, des paysans et des intellectuels révolutionnaires ».",
programmeExtrait:
"Le n°5 de Gong-Information publie un extrait de programme affirmant que « le Marxisme est la théorie qui guide le GONG » et que la Révolution comprend une « étape démocratique nationale et populaire » et « une étape socialiste », et qu'il fallait dès la première préparer la seconde.",
source: 'Lutte Ouvrière (1968), Wikipedia FR, Sylvain Mary (2021)'
};
export const membres: Membre[] = [
{
slug: 'pierre-sainton',
nom: 'Pierre Sainton',
role: 'Fondateur principal, dirigeant, idéologue',
profession: 'Médecin généraliste à Capesterre-Belle-Eau',
biographie:
"Né vers 1924. Reprit des études de médecine à près de 30 ans. Secrétaire du Comité de Liaison des étudiants coloniaux de Paris. Responsable aux affaires extérieures de l'AGEG. Fonde le GONG en juin 1963 à Paris. Prononce le discours fondateur du GONG en Guadeloupe le 30 mai 1964 sur la stèle de Delgrès au Matouba. Arrêté en juin 1967, incarcéré à la prison de la Santé. Condamné à une peine avec sursis au procès de 1968. Reprend ses activités de médecin. Décédé le 9 décembre 2018 à l'âge de 94 ans.",
citation:
"J'ai commencé par saluer la mémoire de Delgrès [...] Je déclare solennellement, sur la stèle de Delgrès que le GONG, entame dès aujourd'hui 30 mai 1964, en Guadeloupe, sur le sol national, la lutte de Libération.",
oeuvre: "Vie et survie d'un fils de Guadeloupe (Éditions Nestor, 2008)",
source: 'Contretemps (Zancarini-Fournel, 2018), RCI Guadeloupe, France-Antilles'
},
{
slug: 'jacques-nestor',
nom: 'Jacques Nestor',
role: 'Membre fondateur, théoricien, leader de masse',
profession: 'Pêcheur, ouvrier, syndicaliste',
biographie:
"Né le 11 mars 1941. Fils d'un Guadeloupéen et d'une Alsacienne. Militant très populaire du GONG, leader de masse parmi les jeunes souvent sans-emploi. Activement surveillé par la police depuis des mois. Première victime des émeutes de mai 1967 : abattu de deux balles dans le ventre le 26 mai 1967 vers 15h30 sur la place de la Victoire à Pointe-à-Pitre. Décède à l'Hôpital général. Il avait 26 ans.",
dateDeces: '26 mai 1967',
lieuDeces: 'Place de la Victoire, Pointe-à-Pitre',
circonstances:
"Premier mort des tueries de mai 1967. Abattu par les forces de l'ordre lors de la manifestation.",
source: 'LDH France, Hypothèses.org, La1ère, Europe-Solidaire'
},
{
slug: 'marcel-manville',
nom: 'Marcel Manville',
role: 'Membre fondateur',
profession: 'Avocat, militant anticolonialiste',
biographie: 'Avocat et militant anticolonialiste. Co-fondateur du GONG en 1963.',
source: 'Wikipedia FR (GONG)'
},
{
slug: 'henri-bangou',
nom: 'Henri Bangou',
role: 'Membre fondateur',
profession: 'Historien, homme politique',
biographie:
'Historien et homme politique guadeloupéen. Co-fondateur du GONG en 1963. Futur maire de Pointe-à-Pitre (1965-2008) et sénateur.',
source: 'Wikipedia FR (GONG)'
},
{
slug: 'serge-glaude',
nom: 'Serge Glaude',
role: 'Co-fondateur, membre dirigeant',
profession: 'Militant politique, auteur',
biographie:
"Co-fondateur du GONG. Accusé au procès de 1968. Auteur de « Le GONG c quoi ? » (2017), ouvrage retraçant l'histoire du mouvement de sa création en 1963 à sa disparition en 1968.",
oeuvre: 'Le GONG c quoi ? (2017)',
source: 'France-Antilles, La1ère'
},
{
slug: 'claude-makouke',
nom: 'Claude Makouke',
role: 'Membre du GONG',
profession: 'Militant',
biographie:
'Membre du GONG. Témoin des événements de mai 1967. Ses témoignages sont cités dans plusieurs travaux universitaires.',
citations: [
"La grève des ouvriers du bâtiment de mai 1967 était une occasion rêvée pour sévir. Et c'est vrai qu'ils ont frappé fort, aveuglément mais tout en ayant en tête que l'essentiel des gens qu'ils devaient tuer étaient des militants du GONG.",
"Sans le GONG, [les évènements de mai] n'auraient pas eu lieu. Il y aurait eu une grève qui aurait tenu un certain temps [...] Mais en fait, ce n'était pas ça l'objectif du colonialisme : c'était de faire traîner le mouvement de grève de manière à ce que les ouvriers et le peuple même se soulèvent, que le GONG vienne apporter son soutien et on en aurait profité pour l'éliminer."
],
source: 'Hypothèses.org (Mé 1967)'
},
{
slug: 'louis-theodore',
nom: 'Louis Théodore',
role: 'Membre du GONG',
profession: 'Militant',
biographie: 'Membre du GONG. Accusé au procès de 1968 aux côtés de Serge Glaude.',
source: 'La1ère'
},
{
slug: 'yvon-coudrieu',
nom: 'Yvon Coudrieu',
role: 'Sympathisant / victime',
profession: 'Enseignant',
biographie:
"Blessé par balle lors des événements de mai 1967, il perdit une jambe. Son cas est cité comme exemple de la violence de la répression.",
source: 'LDH France'
},
{
slug: 'abert-beville',
nom: 'Abert Béville',
role: 'Précurseur (mort avant la fondation du GONG)',
profession: 'Militant anticolonialiste',
biographie:
"Militant anticolonialiste. Mort « accidentellement » dans le crash de l'avion qui le conduisait en Guadeloupe en juin 1962. Sa mort est un des éléments déclencheurs de la fondation du GONG.",
source: 'LDH France'
}
];
export const accusesProces1968 = {
description: "18 Guadeloupéens accusés d'atteinte à l'intégrité du territoire français",
nomsIdentifies: [
'Pierre Sainton (Dr, fondateur du GONG)',
'Serge Glaude (co-fondateur du GONG)',
'Louis Théodore (membre du GONG)',
'Kelly',
'Gérard Lauriette',
'Antoine Marguerite',
'Roland Minatchy',
'Saturnin Nicolo',
'Michel-Théodore'
],
note: "La liste complète des 18 accusés n'est pas entièrement documentée dans les sources accessibles. Les noms ci-dessus sont ceux identifiés dans les sources consultées.",
source: 'Europe-Solidaire, La1ère, France-Antilles'
};
export const chronologie: EvenementChrono[] = [
{
date: '1946',
evenement: 'La Guadeloupe devient département français (loi du 19 mars 1946)',
contexte: "Promesses d'égalité non tenues, persistance des structures coloniales"
},
{
date: '1948',
evenement: "Érection de la stèle de Delgrès au Matouba (Saint-Claude) pour le centenaire de l'abolition",
contexte: 'Lieu de mémoire qui deviendra symbolique pour le GONG'
},
{
date: 'Décembre 1959',
evenement: 'Émeutes de décembre 1959 en Martinique',
contexte: 'Premières révoltes anticoloniales aux Antilles françaises'
},
{
date: '1960',
evenement: "Première Conférence de la Jeunesse guadeloupéenne organisée par l'AGEG",
contexte:
'Mobilisation de la jeunesse. On trouve déjà dans les rangs ceux qui seront les militants du GONG en 1963.'
},
{
date: '1961',
evenement: "Création du Front antillo-guyanais pour l'autonomie",
contexte: 'Première organisation nationaliste antillaise'
},
{
date: 'Juin 1962',
evenement: "Dissolution du Front antillo-guyanais. Mort d'Abert Béville dans un crash d'avion.",
contexte: 'Éléments déclencheurs de la fondation du GONG'
},
{
date: '23 juin 1963',
evenement: 'FONDATION DU GONG à Paris',
contexte:
"Fondé par d'anciens militants de l'AGEG (Pierre Sainton, Jacques Nestor, Marcel Manville, Henri Bangou, Serge Glaude et d'autres). Naît dans la clandestinité.",
majeur: true
},
{
date: '1964',
evenement:
'Publication clandestine de Gong-Information (imprimé en Belgique avec le soutien du PC belge prochinois de Jacques Grippa)',
contexte: 'Diffusion en Guadeloupe et dans la diaspora'
},
{
date: '30 mai 1964',
evenement: 'Installation légale du GONG en Guadeloupe',
contexte:
"Discours de Pierre Sainton sur la stèle de Delgrès au Matouba (Saint-Claude). « Je déclare solennellement [...] que le GONG entame dès aujourd'hui 30 mai 1964, en Guadeloupe, sur le sol national, la lutte de Libération. »",
majeur: true
},
{
date: '1964-1967',
evenement: 'Activité du GONG en Guadeloupe',
contexte:
"Propagande (graffitis, tracts clandestins), cercles d'études marxistes, conférences dans les quartiers populaires, distribution du journal. Soutien du FLN algérien."
},
{
date: '1966',
evenement: 'Conférence tricontinentale de La Havane',
contexte:
"Le GONG prend un « nouveau virage à gauche » et adopte le mot d'ordre d'indépendance nationale (abandonnant l'autonomie)."
},
{
date: 'Mars 1967',
evenement:
"Campagne électorale législative. Affiches du GONG : « Briser les urnes colonialistes » / « Conquérir l'indépendance nationale »",
contexte:
'Les affiches sont saisies par la police sur le port de Pointe-à-Pitre. Révolte urbaine à Basse-Terre consécutive à une agression raciste.'
},
{
date: '1er mai 1967',
evenement: "Manifestation pour l'indépendance organisée par Pierre Sainton à Capesterre-Belle-Eau",
contexte: 'Surprend les autorités'
},
{
date: '26 mai 1967',
evenement: 'ÉMEUTES DE MAI 1967 — Jour 1',
contexte:
"Grève des ouvriers du bâtiment (revendication : +2,5 % de salaire). Agression raciste d'un ouvrier guadeloupéen par un patron béké (responsable local de l'UNR). Manifestation à Pointe-à-Pitre. Les forces de l'ordre tirent à balles réelles. Jacques Nestor (membre du GONG) est la première victime, abattu vers 15h30.",
majeur: true
},
{
date: '27 mai 1967',
evenement: 'ÉMEUTES — Jour 2',
contexte: "Les émeutes s'étendent. Nouveaux morts. Répression généralisée."
},
{
date: '28 mai 1967',
evenement: 'ÉMEUTES — Jour 3',
contexte:
'Poursuite de la répression. Bilan officiel : 7 à 8 morts. Estimations des historiens : 80 à 200 victimes. Nombreux blessés et disparus.'
},
{
date: '4 juin 1967',
evenement: "Opération « GONG » — Arrestations massives",
contexte:
"Le préfet Pierre Bolotte fait déférer 14 membres du GONG devant la Cour de sûreté de l'État à Paris. Transfert aux prisons de Fresnes et de la Santé.",
majeur: true
},
{
date: '17 avril / 17 juin 1967',
evenement: 'Rapports du commissaire Honoré Gévaudan',
contexte:
"Deux rapports policiers démontrent l'absence de responsabilité du GONG dans les événements. Le rapport d'avril 1967 ne sera déclassifié qu'en avril 2016."
},
{
date: '19 février - 1er mars 1968',
evenement: "PROCÈS DES 18 GUADELOUPÉENS devant la Cour de sûreté de l'État (Paris)",
contexte:
"18 accusés d'atteinte à l'intégrité du territoire français. Témoins à la barre : Jean-Paul Sartre, Aimé Césaire, représentant de la LDH. Avocats : Me Henri Leclerc et d'autres. Verdict : 13 acquittés, 6 condamnés à des peines avec sursis (dont Pierre Sainton). Jugement considéré comme une victoire politique par les militants.",
majeur: true
},
{
date: '17 avril 1968',
evenement: 'Libération des 19 Guadeloupéens détenus',
contexte: "La Cour de Sûreté de l'État libère les accusés. 13 acquittés, 6 condamnés avec sursis."
},
{
date: '1968',
evenement: 'DISSOLUTION DE FACTO DU GONG',
contexte:
'Décapitation du mouvement indépendantiste. Passage à la clandestinité pour certains. Exil de nombreux militants. Divisions parmi les nationalistes.',
majeur: true
},
{
date: '1978',
evenement: "Création de l'UPLG (Union Populaire pour la Libération de la Guadeloupe)",
contexte: "Fondée par d'anciens membres du GONG. Premier parti politique indépendantiste structuré issu du GONG."
},
{
date: '2008',
evenement: "Publication de l'autobiographie de Pierre Sainton : « Vie et survie d'un fils de Guadeloupe »",
contexte: 'Éditions Nestor, Gourbeyre'
},
{
date: '2017',
evenement: "Publication de « Le GONG c quoi ? » par Serge Glaude",
contexte: "50 ans après les événements de mai 1967. Co-fondateur du GONG retrace l'histoire du mouvement."
},
{
date: '9 décembre 2018',
evenement: 'Décès de Pierre Sainton à l’âge de 94 ans',
contexte: 'Fondateur du GONG. Médecin généraliste à Capesterre-Belle-Eau.'
},
{
date: '2021',
evenement: "Publication de l'article de Sylvain Mary : « Briser les urnes colonialistes » (OpenEdition)",
contexte: 'Analyse iconographique de la propagande du GONG en 1967'
}
];
export const evenementsMai1967 = {
titre: "Les émeutes de mai 1967 en Guadeloupe (« Mé 67 »)",
contexte: {
social:
"Grève des ouvriers du bâtiment pour une augmentation de salaire de 2,5 %. Chômage croissant, émigration massive.",
racial:
"Agression raciste d'un ouvrier guadeloupéen par un patron béké (responsable local de l'UNR gaulliste) qui demande à son chien « Dis bonjour au nègre ! »",
politique:
'Élections législatives de mars 1967 marquées par des fraudes. Le préfet Pierre Bolotte (venant dAlgérie) accuse le GONG et les communistes.',
international:
"Contexte de décolonisation. Indépendance de l'Algérie (1962). Mouvements de libération en Afrique. Révolution cubaine."
},
deroulement: {
'26 mai':
"Manifestation à Pointe-à-Pitre. Les forces de l'ordre (deux escadrons de gendarmerie déployés par le préfet Bolotte) tirent à balles réelles. Jacques Nestor (GONG) est la première victime, abattu vers 15h30.",
'27 mai': "Les émeutes s'étendent. Nouveaux morts.",
'28 mai': 'Répression généralisée. Terreur dans la population.'
},
bilan: {
officiel: '7 à 8 morts',
estimationsHistoriens: '80 à 200 victimes (morts, blessés, disparus)',
blesses: 'Plus de 30 blessés',
note: 'Des blessés transportés dans les hôpitaux en Martinique ne sont jamais revenus. Les gens enterrèrent leurs morts en catimini. La terreur allait perdurer quarante années.'
},
roleDuGONG: {
actions: [
'Soutien actif aux revendications ouvrières',
'Distribution de tracts appelant à la mobilisation',
'Participation de militants à la manifestation du 26 mai',
'Tentative de politisation du mouvement social'
],
controverse:
"Les autorités françaises ont initialement pensé que l'insurrection avait été fomentée par le GONG, mais il est apparu après enquête que les émeutes étaient spontanées.",
rapportsPolice:
"Le commissaire divisionnaire Gévaudan conclut : « les investigations qui ont été menées à Pointe-à-Pitre n'ont pu apporter la preuve de la responsabilité directe du GONG dans la préparation, l'organisation et l'exécution des manifestations de rues des 26 et 27 mai 1967. »",
analyse:
"Selon Claude Makouke (membre du GONG), le gouvernement a utilisé la grève comme prétexte pour éliminer le GONG : « ce n'était pas ça l'objectif du colonialisme : c'était de faire traîner le mouvement de grève de manière à ce que les ouvriers et le peuple même se soulèvent, que le GONG vienne apporter son soutien et on en aurait profité pour l'éliminer. »"
},
source: 'Wikipedia FR (Émeutes de mai 1967), LDH France, Hypothèses.org, Contretemps'
};
export const proces1968 = {
nom: 'Procès des 18 Guadeloupéens',
juridiction: "Cour de sûreté de l'État (Paris)",
noteJuridiction:
"Tribunal d'exception créé en 1963 pour juger les responsables de l'OAS. Dissous en 1981. Dans la seconde moitié des années 1960, se réoriente vers la répression du gauchisme et de l'indépendantisme.",
dates: '19 février - 1er mars 1968',
accusation: "Atteinte à l'intégrité du territoire français, complot contre l'État et l'unité de la nation",
nombreAccuses: 18,
temoinsDefense: [
'Jean-Paul Sartre (philosophe, écrivain)',
'Aimé Césaire (poète, homme politique martiniquais)',
"Représentant de la Ligue des Droits de l'Homme"
],
avocats: ['Me Henri Leclerc (barreau de Paris)', 'Autres avocats du barreau de Paris', 'Avocats guadeloupéens'],
verdict: {
acquittes: 13,
condamnes: 6,
peines: 'Prison avec sursis pour les 6 condamnés (dont Pierre Sainton)',
interpretation:
"Jugement considéré comme une victoire politique par les militants, l'accusation n'ayant pas réussi à réunir de preuves."
},
elementsCles: [
"L'absence de responsabilité du GONG dans les événements est démontrée par deux rapports policiers (17 avril et 17 juin 1967) du commissaire Gévaudan.",
"Le rapport d'avril 1967 n'a été déclassifié qu'en avril 2016.",
"L'inculpation est due à l'obstination du préfet Pierre Bolotte et des services de Jacques Foccart.",
"Un dirigeant du GONG montre à la barre que la charte de l'organisation ne contenait ni appel au séparatisme ni appel à la violence."
],
source: 'Contretemps (Zancarini-Fournel), Europe-Solidaire, La1ère, Critical-Stages, Archives nationales 5W/734'
};
export const publications: Publication[] = [
{
titre: 'Gong-Information',
sousTitre: 'Journal du Patriote Guadeloupéen',
type: 'Journal / Organe politique et théorique du GONG',
periode: '1964-1967',
lieuImpression: 'Belgique (avec le soutien du Parti communiste belge prochinois de Jacques Grippa)',
lieuDiffusion: 'France (clandestinement) et Guadeloupe',
contenu: 'Propagande indépendantiste, analyses marxistes, mots dordre révolutionnaires',
extraitProgramme:
"Le n°5 publie un extrait de programme : « le Marxisme est la théorie qui guide le GONG » et la Révolution comprend une « étape démocratique nationale et populaire » et « une étape socialiste ».",
source: 'Lutte Ouvrière (1968), INHA/Agorha, SISMO'
},
{
titre: 'Révolution Caraïbe',
type: 'Journal',
periode: 'Non documentée précisément',
contenu: 'Distribution dans les quartiers populaires',
source: 'Wikipedia FR (GONG)'
},
{
titre: 'Tracts et brochures clandestins',
type: 'Propagande',
periode: '1963-1967',
contenu: 'Appels à la mobilisation, dénonciation du colonialisme, mots dordre indépendantistes',
source: 'LDH France, Contretemps'
},
{
titre: 'Affiches électorales (mars 1967)',
type: 'Propagande électorale',
periode: 'Mars 1967',
contenu: "« Briser les urnes colonialistes » / « Conquérir l'indépendance nationale »",
note: 'Saisies par la police sur le port de Pointe-à-Pitre',
source: 'Contretemps, Sylvain Mary (2021)'
}
];
export const repression = {
arrestations:
"Plus de 70 arrestations entre la Guadeloupe et la France. Des étudiants de l'AGEG, des ouvriers de Fraternité ouvrière, des employés, des journalistes du Progrès social et de La Vérité, des médecins, des avocats.",
incarceration: 'Prisons de Fresnes et de la Santé (Paris)',
perquisitions: 'Saisies de matériel de propagande',
dissolution: 'Le GONG est dissous par les pouvoirs publics suite à la révolte urbaine des 25-26 mai 1967',
consequences: [
'Décapitation du mouvement indépendantiste',
'Passage à la clandestinité totale pour certains militants',
'Exil de nombreux militants',
'Démantèlement du GONG',
'Répression des journaux progressistes (La Vérité, Le Progrès social des frères Rodes)',
'Terreur durable dans la population (40 ans selon la LDH)'
],
responsables: [
{
nom: 'Pierre Bolotte',
role: 'Préfet de Guadeloupe',
note: "Venant d'Algérie. Accuse le GONG dès le début des événements."
},
{
nom: 'Jacques Foccart',
role: "Secrétaire général de l'Élysée aux affaires africaines et malgaches",
note: "Ses services sont impliqués dans l'inculpation des membres du GONG."
},
{
nom: 'Hersant',
role: 'Directeur de France-Antilles',
note: "Le seul quotidien en place, gaulliste, participe à la propagande d'État contre le GONG."
}
] satisfies Responsable[],
source: 'LDH France, Contretemps, Hypothèses.org'
};
export const heritage = {
mouvements: [
{
nom: 'UPLG (Union Populaire pour la Libération de la Guadeloupe)',
dateCreation: '1978',
description:
"Premier parti politique indépendantiste structuré. Créé par d'anciens membres du GONG. Toujours actif en 2026.",
source: 'Wikipedia FR, Sylvain Mary (2021), Union-Communiste'
},
{
nom: 'ARC (Alliance Révolutionnaire Caraïbe)',
dateCreation: 'Non documentée précisément',
description: 'Mouvement révolutionnaire caribéen influencé par le GONG.',
source: 'Wikipedia FR (GONG)'
},
{
nom: 'MPGI (Mouvement Populaire pour une Guadeloupe Indépendante)',
dateCreation: 'Non documentée précisément',
description: 'Mouvement indépendantiste issu de la mouvance du GONG.',
source: 'Wikipedia FR (GONG)'
},
{
nom: 'UTA (Union des Travailleurs Antillais)',
dateCreation: 'Post-1968',
description:
"Syndicat de type nouveau, non affilié aux centrales françaises. Créé par d'anciens membres du GONG et de l'AGEG.",
source: 'LDH France'
},
{
nom: 'UGTG (Union Générale des Travailleurs de Guadeloupe)',
dateCreation: '1973',
description: 'Syndicat de type nouveau préconisant la lutte de masses. Issu de la mouvance GONG/AGEG.',
source: 'LDH France'
}
] satisfies MouvementHeritage[],
influenceCulturelle: [
{
oeuvre: 'La Chasse au racoon',
auteur: 'Max Jeanne',
type: 'Roman',
date: '1980',
sujet: 'Évoque les événements de mai 1967'
},
{
oeuvre: "L'Impossible Procès des Guadeloupéens",
auteur: 'Collectif',
type: 'Pièce de théâtre / reconstitution',
date: '2018-2019',
sujet:
'Reconstitution du procès des 18 Guadeloupéens. Jouée au Théâtre Aimé-Césaire (Martinique) et en Guadeloupe.'
},
{
oeuvre: "Vie et survie d'un fils de Guadeloupe",
auteur: 'Pierre Sainton',
type: 'Autobiographie',
date: '2008',
sujet: 'Mémoires du fondateur du GONG'
},
{
oeuvre: 'Le GONG c quoi ?',
auteur: 'Serge Glaude',
type: 'Essai historique',
date: '2017',
sujet: "Histoire du GONG de 1963 à 1968 par son co-fondateur"
}
] satisfies OeuvreCulturelle[],
memoire: [
'Le 26 mai est devenu une date de commémoration en Guadeloupe (Mé 67)',
'La stèle de Delgrès au Matouba (Saint-Claude) reste un lieu de mémoire lié au GONG',
"Les événements de mai 1967 ont été officiellement reconnus et une commission d'information a été créée",
"Le rapport Gévaudan d'avril 1967 a été déclassifié en avril 2016",
"L'UPLG reste active en 2026 et se réclame de l'héritage du GONG"
],
source: 'Wikipedia FR, LDH France, Sylvain Mary (2021), CaraibCreoleNews'
};
export const contexteHistorique = {
guadeloupeAvantGONG: {
statut: 'Département français depuis 1946',
economie:
'Économie de plantation (canne à sucre, banane). Dominée par les békés (grands planteurs blancs descendants de colons).',
social:
'Chômage massif, émigration vers la métropole (BUMIDOM), inégalités raciales et sociales persistantes.',
politique: "PCG (Parti Communiste Guadeloupéen) comme principale force d'opposition. Revendication d'autonomie."
},
contexteInternational: {
decolonisation: "Indépendance de l'Algérie (1962), mouvements de libération en Afrique",
guerreFroide: 'Influence du marxisme-léninisme, du maoïsme',
revolutionCubaine: '1959 — Modèle caribéen de révolution',
tricontinentale: '1966 — Conférence de La Havane, solidarité des peuples du Tiers-Monde',
guerreVietnam: 'Mobilisation anti-impérialiste mondiale'
},
precurseurs: [
"Louis Delgrès (1766-1802) — Résistance à l'esclavage. Figure tutélaire du GONG.",
"Front antillo-guyanais pour l'autonomie (1961-1962)",
'Association générale des étudiants guadeloupéens (AGEG/AGEEG)',
'Abert Béville (mort en 1962)'
]
};
export const sources: Source[] = [
{
auteur: 'Pierre Sainton',
titre: "Vie et survie d'un fils de Guadeloupe",
editeur: 'Éditions Nestor, Gourbeyre',
annee: '2008',
type: 'Autobiographie'
},
{
auteur: 'Serge Glaude',
titre: 'Le GONG c quoi ?',
editeur: 'Éditions Nestor',
annee: '2017',
type: 'Essai historique'
},
{
auteur: 'Sylvain Mary',
titre:
"Briser les urnes colonialistes. Conquérir l'indépendance nationale. Une analyse iconographique de la propagande du GONG en 1967",
editeur: 'OpenEdition / Esclavages',
annee: '2021',
type: 'Article académique',
url: 'https://journals.openedition.org/slaveries/3788'
},
{
auteur: 'Michelle Zancarini-Fournel',
titre: "Pierre Sainton : disparition d'une figure emblématique de la lutte anticolonialiste",
editeur: 'Contretemps',
annee: '2018',
type: 'Article',
url: 'https://www.contretemps.eu/pierre-sainton-figure-anticolonialiste/'
},
{
auteur: 'Lutte Ouvrière',
titre: "À propos du procès devant la cour de sécurité : qu'est-ce que le GONG ?",
editeur: 'Lutte de Classe (série 1967-1968)',
annee: '1968',
type: 'Article politique',
url: 'https://www.lutte-ouvriere.org/mensuel/article/documents-archives-la-revue-lutte-de-classe-serie-1967-1968-article-a-propos-du-proces-devant-la-cour.html'
},
{
auteur: 'LDH France',
titre: 'Guadeloupe, Mai 1967, un drame français',
editeur: "Ligue des Droits de l'Homme",
annee: 'Non daté',
type: 'Article',
url: 'https://www.ldh-france.org/Guadeloupe-Mai-1967-un-drame/'
},
{
auteur: 'Hypothèses.org',
titre: 'Mé 1967 en Guadeloupe : un massacre colonial longtemps occulté',
editeur: 'Hypothèses (blog académique)',
annee: 'Non daté',
type: 'Article académique',
url: 'https://decolonial.hypotheses.org/2102'
},
{
auteur: 'Collectif',
titre: "L'Impossible Procès des Guadeloupéens",
editeur: 'Critical Stages',
annee: 'Non daté',
type: 'Article / Pièce de théâtre',
url: 'https://www.critical-stages.org/19/limpossible-proces-des-guadeloupeens-une-dialectique-fragile-simpose/'
},
{
auteur: 'France Archives',
titre: 'Opération GONG du 4 juin 1967, organisation et déroulement',
editeur: 'Archives nationales',
annee: '1967',
type: "Document d'archives",
url: 'https://francearchives.gouv.fr/fr/facomponent/f18dd4215dcdf3cb8dd82c4d40d705358c5bd67e'
},
{
auteur: 'Wikipedia',
titre: "Groupe d'organisation nationale de la Guadeloupe",
editeur: 'Wikipedia FR/EN',
annee: '2026',
type: 'Encyclopédie',
url: 'https://fr.wikipedia.org/wiki/Groupe_d%27organisation_nationale_de_la_Guadeloupe'
},
{
auteur: 'Wikipedia',
titre: 'Émeutes de mai 1967 en Guadeloupe',
editeur: 'Wikipedia FR',
annee: '2026',
type: 'Encyclopédie',
url: 'https://fr.wikipedia.org/wiki/%C3%89meutes_de_mai_1967_en_Guadeloupe'
},
{
auteur: 'Europe-Solidaire',
titre: 'Guadeloupe : un an après les massacres de Mé 67, dix-neuf Guadeloupéens sont libérés',
editeur: 'Europe-Solidaire',
annee: 'Non daté',
type: 'Article',
url: 'https://www.europe-solidaire.org/spip.php?article44927'
},
{
auteur: 'La1ère / Franceinfo',
titre: 'Février-mars-avril 1968 : les procès qui ont marqué la Guadeloupe',
editeur: 'La1ère',
annee: 'Non daté',
type: 'Article journalistique',
url: 'https://la1ere.franceinfo.fr/guadeloupe/fevrier-mars-avril-1968-proces-qui-ont-marque-guadeloupe-564093.html'
},
{
auteur: 'Max Jeanne',
titre: 'La Chasse au racoon',
editeur: 'Non documenté',
annee: '1980',
type: 'Roman'
},
{
auteur: 'Archives nationales',
titre: "5W/734, arrêt n°838 de la Cour de sûreté de l'État",
editeur: 'Archives nationales',
annee: '1968',
type: 'Document judiciaire'
}
];
// ── Helpers ──
export function getMembre(slug: string): Membre | undefined {
return membres.find((m) => m.slug === slug);
}
/** Contact & écosystème (repris de l'index.html actuel). */
export const contact = {
email: 'gong971@proton.me',
emailOKI: 'kontak@o-k-i.net',
bokante: 'https://bokante.o-k-i.net',
gade: 'https://gade.o-k-i.net/',
forge: 'https://labola.o-k-i.net/ORGANISATION-KA-INTERNATIONALE/gong.gp'
};
export const SITE = {
url: 'https://gong.gp',
nom: 'GONG',
nomComplet: "Groupe d'Organisation Nationale de la Guadeloupe",
slogan: "Briser les urnes colonialistes. Conquérir l'indépendance nationale",
description:
"Le GONG (Groupe d'Organisation Nationale de la Guadeloupe) est une organisation indépendantiste et anticolonialiste guadeloupéenne fondée le 23 juin 1963 et dissoute en 1968.",
twitter: '@OrganisationKA'
};
+78
View File
@@ -0,0 +1,78 @@
// Types du dossier documentaire GONG. Contenu repris à l'identique de la source
// (doc2sveltekit-transition/gong.py) — structuré, jamais réécrit. Toutes les données sont sourcées.
export interface Membre {
slug: string;
nom: string;
role: string;
profession: string;
biographie: string;
citation?: string;
citations?: string[];
oeuvre?: string;
dateDeces?: string;
lieuDeces?: string;
circonstances?: string;
source: string;
}
export interface EvenementChrono {
date: string;
evenement: string;
contexte: string;
majeur?: boolean; // jalon fort (mise en exergue)
}
export interface Influence {
penseur: string;
apport: string;
}
export interface EvolutionMotOrdre {
periode: string;
motOrdre: string;
contexte: string;
}
export interface Publication {
titre: string;
sousTitre?: string;
type: string;
periode: string;
lieuImpression?: string;
lieuDiffusion?: string;
contenu: string;
extraitProgramme?: string;
note?: string;
source: string;
}
export interface MouvementHeritage {
nom: string;
dateCreation: string;
description: string;
source: string;
}
export interface OeuvreCulturelle {
oeuvre: string;
auteur: string;
type: string;
date: string;
sujet: string;
}
export interface Source {
auteur: string;
titre: string;
editeur: string;
annee: string;
type: string;
url?: string;
}
export interface Responsable {
nom: string;
role: string;
note: string;
}
+23
View File
@@ -0,0 +1,23 @@
// i18n minimal, statique-friendly (routage par dossier). FR par défaut ; EN prévu sur /en/.
// Le contenu éditorial FR reste dans les composants ; ce module gère locale + microcopy.
export type Locale = 'fr' | 'en';
export const LOCALES: Locale[] = ['fr', 'en'];
export const DEFAULT_LOCALE: Locale = 'fr';
/** Déduit la locale depuis le premier segment du chemin (/en/… → 'en', sinon 'fr'). */
export function localeFromPath(pathname: string): Locale {
const seg = pathname.replace(/^\/+/, '').split('/')[0];
return seg === 'en' ? 'en' : 'fr';
}
/** Retourne le chemin équivalent dans l'autre locale (paires FR ↔ EN). */
export function alternatePath(pathname: string, target: Locale): string {
const current = localeFromPath(pathname);
if (current === target) return pathname;
if (target === 'en') return '/en' + (pathname === '/' ? '' : pathname);
return pathname.replace(/^\/en/, '') || '/';
}
/** Code lang HTML (BCP-47). 'gcf' = créole guadeloupéen pour la microcopy. */
export const HTML_LANG: Record<Locale, string> = { fr: 'fr', en: 'en' };
+31
View File
@@ -0,0 +1,31 @@
import type { Action } from 'svelte/action';
import { syncopatedDelay } from './tokens';
// use:reveal={index} — révèle l'élément à l'entrée dans le viewport avec cascade gwoka.
// L'état caché est posé en CSS uniquement sous html.has-js + prefers-reduced-motion: no-preference,
// donc le contenu reste lisible sans JS et sans animation.
export const reveal: Action<HTMLElement, number | undefined> = (node, index = 0) => {
const reduce = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
if (reduce) {
node.classList.add('is-visible');
return;
}
node.style.setProperty('--d', `${syncopatedDelay(index)}ms`);
const io = new IntersectionObserver(
(entries) => {
for (const e of entries) {
if (e.isIntersecting) {
node.classList.add('is-visible');
io.unobserve(node);
}
}
},
{ threshold: 0.12, rootMargin: '0px 0px -8% 0px' }
);
io.observe(node);
return {
destroy() {
io.disconnect();
}
};
};
+31
View File
@@ -0,0 +1,31 @@
// Smooth scroll Lenis — import dynamique, une seule instance, gate reduced-motion.
import { prefersReducedMotion } from './tokens';
type Lenis = { raf: (t: number) => void; destroy: () => void; scrollTo: (t: unknown, o?: unknown) => void };
let lenis: Lenis | null = null;
let rafId = 0;
export async function initSmoothScroll(): Promise<() => void> {
if (prefersReducedMotion() || typeof window === 'undefined') return () => {};
const { default: Lenis } = await import('lenis');
lenis = new Lenis({ lerp: 0.11, wheelMultiplier: 1, smoothWheel: true }) as unknown as Lenis;
const loop = (t: number) => {
lenis?.raf(t);
rafId = requestAnimationFrame(loop);
};
rafId = requestAnimationFrame(loop);
return () => {
cancelAnimationFrame(rafId);
lenis?.destroy();
lenis = null;
};
}
/** Défilement vers une ancre (#id) en respectant Lenis si actif. */
export function scrollToAnchor(hash: string): void {
const el = document.querySelector(hash);
if (!el) return;
if (lenis) lenis.scrollTo(el, { offset: -80 });
else el.scrollIntoView({ behavior: 'smooth' });
}
+14
View File
@@ -0,0 +1,14 @@
// Cadences gwoka en TS (miroir des tokens CSS). Le stagger de marque est syncopé (3+3+2).
export function prefersReducedMotion(): boolean {
if (typeof window === 'undefined') return true;
return window.matchMedia('(prefers-reduced-motion: reduce)').matches;
}
const SYNCOPE = [0, 120, 300, 360, 600, 660, 900, 960];
/** Délai syncopé pour l'élément i (ms). Cycle de +1200 ms au-delà de 8 éléments. */
export function syncopatedDelay(i: number): number {
const cycle = Math.floor(i / SYNCOPE.length);
return SYNCOPE[i % SYNCOPE.length] + cycle * 1200;
}
+30
View File
@@ -0,0 +1,30 @@
import { SITE } from './data/gong';
/** Nœud WebPage standard pour une page interne. */
export function webPage(path: string, name: string, description: string) {
const url = SITE.url + path;
return {
'@type': 'WebPage',
'@id': `${url}#webpage`,
url,
name,
description,
isPartOf: { '@id': `${SITE.url}/#website` },
about: { '@id': `${SITE.url}/#organization` },
inLanguage: 'fr-FR'
};
}
/** Nœud Person (fiche militant). */
export function personNode(path: string, name: string, description: string, extra: Record<string, unknown> = {}) {
const url = SITE.url + path;
return {
'@type': 'Person',
'@id': `${url}#person`,
name,
description,
url,
memberOf: { '@id': `${SITE.url}/#organization` },
...extra
};
}
+86
View File
@@ -0,0 +1,86 @@
// Chargement des actualités depuis content/actualites/*.md (éditées via Sveltia CMS).
// $lib/server → garanti côté serveur : `marked` ne part jamais dans le bundle client.
// Le site étant prérendu, ce code s'exécute au build ; les pages sont ensuite 100 % statiques.
import { marked } from 'marked';
const files = import.meta.glob('/content/actualites/*.md', {
query: '?raw',
import: 'default',
eager: true
}) as Record<string, string>;
export interface Actualite {
slug: string;
titre: string;
date: string; // affichage libre (ex. « 26 mai 2026 »)
iso: string; // ISO pour <time datetime> / schema
chapeau: string;
couverture?: string;
couvertureAlt?: string;
top: boolean;
html: string; // corps rendu (first-party, Sveltia)
texte: string; // corps brut (pour description/estimation de lecture)
}
/** Parse un front-matter YAML simple (clés scalaires, valeurs entre guillemets optionnelles). */
function parseFrontmatter(raw: string): { data: Record<string, string>; body: string } {
const m = raw.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/);
if (!m) return { data: {}, body: raw };
const data: Record<string, string> = {};
for (const line of m[1].split(/\r?\n/)) {
const kv = line.match(/^([A-Za-z0-9_]+)\s*:\s*(.*)$/);
if (!kv) continue;
let val = kv[2].trim();
if (
(val.startsWith('"') && val.endsWith('"')) ||
(val.startsWith("'") && val.endsWith("'"))
) {
val = val.slice(1, -1);
}
data[kv[1]] = val;
}
return { data, body: m[2] };
}
function frToIso(date: string): string {
// Accepte déjà l'ISO ; sinon renvoie tel quel (Sveltia écrit du YYYY-MM-DD).
return /^\d{4}-\d{2}-\d{2}/.test(date) ? date : date;
}
function frDisplay(iso: string): string {
const d = new Date(iso);
if (Number.isNaN(d.getTime())) return iso;
return d.toLocaleDateString('fr-FR', { day: 'numeric', month: 'long', year: 'numeric' });
}
let cache: Actualite[] | null = null;
export function getActualites(): Actualite[] {
if (cache) return cache;
const out: Actualite[] = [];
for (const [path, raw] of Object.entries(files)) {
const slug = path.split('/').pop()!.replace(/\.md$/, '');
const { data, body } = parseFrontmatter(raw);
if (!data.titre) continue;
const iso = frToIso(data.date ?? '');
out.push({
slug,
titre: data.titre,
iso,
date: data.date ? frDisplay(iso) : '',
chapeau: data.chapeau ?? '',
couverture: data.couverture || undefined,
couvertureAlt: data.couvertureAlt || data.titre,
top: data.top === 'true',
html: marked.parse(body.trim(), { async: false }) as string,
texte: body.trim()
});
}
out.sort((a, b) => (a.iso < b.iso ? 1 : a.iso > b.iso ? -1 : 0));
cache = out;
return out;
}
export function getActualite(slug: string): Actualite | undefined {
return getActualites().find((a) => a.slug === slug);
}
+68
View File
@@ -0,0 +1,68 @@
// Archives numérisées : les numéros du journal « Gong-Information » (sources primaires
// récupérées depuis l'ancien back-office Strapi). Transcriptions HTML first-party + PDF + couverture.
// $lib/server → chargé au build ; pages 100 % prérendues.
const contenus = import.meta.glob('/content/archives/*.html', {
query: '?raw',
import: 'default',
eager: true
}) as Record<string, string>;
export interface Archive {
slug: string;
numero: string;
titre: string;
date: string; // libellé d'époque (ex. « Mai-Juin 1966 »)
iso: string; // pour tri et lastmod
chapeau: string;
couverture: string; // webp
pdf: string;
html: string; // transcription first-party
}
const META: Omit<Archive, 'html'>[] = [
{
slug: 'gong-information-16',
numero: 'N° 16',
titre: 'Gong-Information n° 16',
date: 'Mai-Juin 1966',
iso: '1966-05-01',
chapeau:
"En Guadeloupe, les connaissances intellectuelles jouissent d'une grande faveur. Par extension les masses laborieuses attribuent un grand prestige aux intellectuels.",
couverture: '/images/archives/gong-info-16.webp',
pdf: '/archives/gong-information-16.pdf'
},
{
slug: 'gong-information-special',
numero: 'N° spécial',
titre: 'Gong-Information n° spécial',
date: 'Janvier-Février 1967',
iso: '1967-01-01',
chapeau: "Un peuple qui décide de se gouverner est un peuple qui entreprend de se critiquer et de s'organiser.",
couverture: '/images/archives/gong-info-special.webp',
pdf: '/archives/gong-information-special.pdf'
},
{
slug: 'gong-information-19',
numero: 'N° 19',
titre: 'Gong-Information n° 19',
date: 'Mars-Avril-Mai 1967',
iso: '1967-03-01',
chapeau:
"À l'intimidation constituée par l'envoi des « troupes d'intervention » colonialistes françaises, au chantage exercé par les services de la préfecture, à la corruption…",
couverture: '/images/archives/gong-info-19.webp',
pdf: '/archives/gong-information-19.pdf'
}
];
function html(slug: string): string {
return (contenus[`/content/archives/${slug}.html`] ?? '').trim();
}
export function getArchives(): Archive[] {
return META.map((m) => ({ ...m, html: html(m.slug) })).sort((a, b) => (a.iso < b.iso ? -1 : 1));
}
export function getArchive(slug: string): Archive | undefined {
return getArchives().find((a) => a.slug === slug);
}
+16
View File
@@ -0,0 +1,16 @@
// Rendu des documents historiques longs (charte, orientation) en HTML.
// $lib/server → marked reste côté serveur ; pages prérendues, zéro coût client.
import { marked } from 'marked';
const files = import.meta.glob('/content/documents/*.md', {
query: '?raw',
import: 'default',
eager: true
}) as Record<string, string>;
export function getDocument(nom: string): string {
const key = `/content/documents/${nom}.md`;
const raw = files[key];
if (!raw) throw new Error(`Document introuvable : ${nom}`);
return marked.parse(raw.trim(), { async: false }) as string;
}
+356
View File
@@ -0,0 +1,356 @@
/* ============================================================================
BASE GONG — reset, primitives, gate reduced-motion.
Importé après gong-tokens.css dans +layout.svelte.
============================================================================ */
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
}
body {
margin: 0;
min-height: 100dvh;
background: var(--noir);
color: var(--creme);
font-family: var(--font-body);
font-weight: 400;
line-height: 1.6;
font-size: clamp(1rem, 0.96rem + 0.2vw, 1.0625rem);
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
img,
picture,
svg,
video {
max-width: 100%;
height: auto;
display: block;
}
/* ── Titres — Archivo, MAJUSCULES ── */
h1,
h2,
h3,
h4 {
font-family: var(--font-display);
font-weight: 800;
line-height: 1.08;
letter-spacing: -0.01em;
text-transform: uppercase;
margin: 0 0 var(--space-2);
text-wrap: balance;
}
h1 {
font-size: clamp(2.2rem, 1.6rem + 3vw, 4rem);
font-weight: 900;
}
h2 {
font-size: clamp(1.6rem, 1.3rem + 1.6vw, 2.5rem);
}
h3 {
font-size: clamp(1.25rem, 1.1rem + 0.8vw, 1.6rem);
font-weight: 700;
}
h4 {
font-size: 1.1rem;
font-weight: 700;
}
p {
margin: 0 0 var(--space-2);
}
strong,
b {
font-weight: 700;
color: var(--creme);
}
/* ── Liens : soulignés uniquement dans le contenu (main), pas dans nav/footer ── */
a {
color: var(--accent);
text-decoration: none;
transition: color var(--dur-tanbou) var(--ease-ka);
}
a:hover {
color: var(--accent-hover);
}
main a:not(.btn):not(.card):not(.tag):not(.no-underline) {
text-decoration: underline;
text-underline-offset: 0.15em;
text-decoration-thickness: 1px;
}
/* ── Focus visible (marque) ── */
:focus-visible {
outline: 3px solid var(--focus);
outline-offset: 2px;
border-radius: 2px;
}
/* ── Layout ── */
.container {
width: 100%;
max-width: var(--container);
margin-inline: auto;
padding-inline: var(--space-3);
}
.container.lecture {
max-width: var(--container-lecture);
}
.section {
padding-block: var(--space-5);
}
.section--tight {
padding-block: var(--space-4);
}
/* ── Bouton canonique — balayage d'accent au survol ── */
.btn {
--btn-fill: var(--accent);
position: relative;
display: inline-flex;
align-items: center;
gap: 0.5em;
font-family: var(--font-display);
font-weight: 700;
font-size: 0.95rem;
text-transform: uppercase;
letter-spacing: 0.03em;
line-height: 1;
padding: 0.85em 1.4em;
border: 2px solid var(--btn-fill);
border-radius: var(--radius-sm);
background: transparent;
color: var(--creme);
cursor: pointer;
overflow: hidden;
isolation: isolate;
transition: color var(--dur-tanbou) var(--ease-ka);
}
.btn::after {
content: '';
position: absolute;
inset: 0;
z-index: -1;
background: var(--btn-fill);
transform: scaleX(0);
transform-origin: left;
transition: transform var(--dur-mesure) var(--ease-syncope);
}
.btn:hover,
.btn:focus-visible {
color: #0d0d0d;
}
.btn:hover::after,
.btn:focus-visible::after {
transform: scaleX(1);
}
.btn--fill {
background: var(--btn-fill);
color: #0d0d0d;
}
.btn--fill::after {
background: var(--accent-hover);
}
.btn--vert {
--btn-fill: var(--vert-gong);
}
.btn--ghost {
border-color: var(--line);
}
.btn--ghost:hover {
--btn-fill: var(--accent);
}
/* ── Carte canonique — liseré gauche d'accent, lift au survol ── */
.card {
position: relative;
display: flex;
flex-direction: column;
background: var(--card-bg);
border: var(--border-card);
border-left: 4px solid var(--accent);
border-radius: var(--radius-md);
padding: var(--space-3);
transition:
transform var(--dur-mesure) var(--ease-ka),
border-color var(--dur-mesure) var(--ease-ka),
background var(--dur-mesure) var(--ease-ka);
}
.card--vert {
border-left-color: var(--vert-gong);
}
a.card,
.card--link {
cursor: pointer;
color: inherit;
}
a.card:hover,
.card--link:hover {
transform: translateY(-4px);
background: var(--card-bg-hover);
border-color: var(--accent);
}
/* ── Tag canonique ── */
.tag {
display: inline-flex;
align-items: center;
gap: 0.35em;
font-family: var(--font-body);
font-size: 0.8rem;
font-weight: 600;
line-height: 1;
padding: 0.4em 0.7em;
border-radius: var(--radius-sm);
background: color-mix(in srgb, var(--accent) 12%, transparent);
border: 1px solid color-mix(in srgb, var(--accent) 45%, transparent);
color: var(--creme);
text-transform: none;
letter-spacing: 0;
}
.tag--vert {
background: color-mix(in srgb, var(--vert-gong) 12%, transparent);
border-color: color-mix(in srgb, var(--vert-gong) 45%, transparent);
}
/* ── Flag-bar GONG — signature (vert · blanc · rouge, segments francs) ── */
.flag-bar {
height: 6px;
width: 100%;
background: linear-gradient(
to right,
var(--vert-gong) 0 40%,
var(--blanc-drapeau) 40% 60%,
var(--rouge-gong) 60% 100%
);
}
html.light-theme .flag-bar {
background: linear-gradient(
to right,
var(--vert-gong) 0 40%,
#0d0d0d 40% 60%,
var(--rouge-gong) 60% 100%
);
}
/* Flag-chip : mini signature d'ornement de titre (56 × 6 px) */
.flag-chip {
display: inline-block;
width: 56px;
height: 6px;
border-radius: 1px;
background: linear-gradient(
to right,
var(--vert-gong) 0 40%,
var(--blanc-drapeau) 40% 60%,
var(--rouge-gong) 60% 100%
);
}
/* ── Icônes (sprite SVG) ── */
.icon {
width: 1.25em;
height: 1.25em;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
flex: none;
vertical-align: middle;
}
/* ── Accessibilité ── */
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.skip-link {
position: absolute;
left: 0.5rem;
top: -3rem;
z-index: 200;
background: var(--accent);
color: #0d0d0d;
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
padding: 0.6em 1em;
border-radius: var(--radius-sm);
transition: top var(--dur-tanbou) var(--ease-ka);
}
.skip-link:focus {
top: 0.5rem;
color: #0d0d0d;
}
/* ── Reveal — état caché seulement si JS actif ET mouvement autorisé ── */
html.has-js .reveal {
opacity: 0;
transform: translateY(18px);
}
html.has-js .reveal.is-visible {
opacity: 1;
transform: none;
transition:
opacity var(--dur-mesure) var(--ease-ka),
transform var(--dur-mesure) var(--ease-ka);
transition-delay: var(--d, 0ms);
}
/* Prose (textes historiques longs) */
.prose {
max-width: var(--container-lecture);
}
.prose p,
.prose li {
color: color-mix(in srgb, var(--creme) 90%, transparent);
}
.prose h2 {
margin-top: var(--space-4);
}
.prose h3 {
margin-top: var(--space-3);
}
.prose blockquote {
margin: var(--space-3) 0;
padding-left: var(--space-2);
border-left: 3px solid var(--accent);
color: var(--muted);
font-style: italic;
}
/* ── Gate globale prefers-reduced-motion ── */
@media (prefers-reduced-motion: reduce) {
html {
scroll-behavior: auto;
}
*,
*::before,
*::after {
animation-duration: 0.001ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.001ms !important;
scroll-behavior: auto !important;
}
html.has-js .reveal {
opacity: 1;
transform: none;
}
}
+87
View File
@@ -0,0 +1,87 @@
/* ============================================================================
TOKENS GONG — identité propre (drapeau guadeloupéen vert/blanc/rouge)
Méthode OKI appliquée : thème sombre par défaut, clair opt-in WCAG AA,
cadences gwoka. Le GONG garde SES couleurs (rouge d'action, vert drapeau).
Un seul fichier de vérité — jamais de valeur recopiée à la main ailleurs.
============================================================================ */
:root {
/* ── Noyau (thème sombre = défaut) ── */
--noir: #0d0d0d; /* background */
--noir-profond: #171210; /* surface (chaud, presque noir) */
--creme: #faf6ef; /* foreground — blanc chaud */
--line: rgba(255, 255, 255, 0.1); /* filets — jamais de gris plein */
/* ── Drapeau GONG : rouge = agir/signaler · vert = valider/secondaire · blanc ── */
--rouge-gong: #e11419; /* accent : couleur d'action principale */
--rouge-vif: #ff2a30; /* survol du rouge */
--vert-gong: #00a651; /* vert drapeau : validation, mémoire, second accent */
--vert-vif: #12c766; /* survol du vert */
--blanc-drapeau: #ffffff;
/* ── Étendue (parcimonie : décorations, sémantique) ── */
--jaune-sable: #f0c419; /* rappel, mise en exergue rare */
--gris-sombre: #241c19;
/* ── Sémantique dérivée ── */
--muted: color-mix(in srgb, var(--creme) 68%, transparent);
--muted-fort: color-mix(in srgb, var(--creme) 50%, transparent);
--card-bg: rgba(255, 255, 255, 0.03);
--card-bg-hover: rgba(255, 255, 255, 0.055);
--accent: var(--rouge-gong);
--accent-hover: var(--rouge-vif);
--focus: var(--jaune-sable);
/* ── Typographie ── */
--font-display: 'Archivo', 'Arial Black', system-ui, sans-serif;
--font-body: 'Inter', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
/* ── Formes (angles nets, ≤ 6 px) ── */
--radius-sm: 3px; /* boutons, tags, badges */
--radius-md: 6px; /* cartes — jamais plus */
--border-card: 1px solid var(--line);
--border-btn: 2px solid var(--accent);
/* ── Espacements ── */
--space-1: 0.75rem;
--space-2: 1rem;
--space-3: 1.5rem;
--space-4: 2rem;
--space-5: 4rem;
--space-6: 6rem;
--container: 1200px;
--container-lecture: 68ch; /* colonne de lecture (textes historiques longs) */
/* ── Motion — cadences gwoka (rythme du ka) ── */
--ease-ka: cubic-bezier(0.22, 1, 0.36, 1); /* temps fort : attaque franche, longue tenue */
--ease-syncope: cubic-bezier(0.65, 0, 0.35, 1); /* contretemps : symétrique, urgent */
--dur-tanbou: 120ms; /* double-croche — micro-interactions */
--dur-mesure: 480ms; /* une mesure — entrées de section */
--dur-phrase: 960ms; /* deux mesures — transitions de page */
/* ── Divers ── */
--nav-h: 4rem;
--shadow-1: 0 2px 8px rgba(0, 0, 0, 0.35);
--shadow-2: 0 8px 28px rgba(0, 0, 0, 0.45);
color-scheme: dark;
}
/* ── Thème clair — opt-in, accents assombris pour WCAG AA ── */
html.light-theme {
--noir: #faf6ef;
--noir-profond: #f2ebdf;
--creme: #14100e;
--line: rgba(0, 0, 0, 0.12);
--rouge-gong: #b3060c;
--rouge-vif: #900409;
--vert-gong: #007a3d;
--vert-vif: #005e2f;
--jaune-sable: #9a7b00;
--gris-sombre: #e6dccb;
--muted: color-mix(in srgb, var(--creme) 72%, transparent);
--muted-fort: color-mix(in srgb, var(--creme) 55%, transparent);
--card-bg: rgba(0, 0, 0, 0.03);
--card-bg-hover: rgba(0, 0, 0, 0.055);
--focus: #9a7b00;
color-scheme: light;
}
+60
View File
@@ -0,0 +1,60 @@
<script lang="ts">
import { page } from '$app/state';
import Icon from '$lib/components/Icon.svelte';
const is404 = $derived(page.status === 404);
</script>
<svelte:head>
<title>{page.status} — GONG</title>
<meta name="robots" content="noindex" />
</svelte:head>
<main id="contenu" class="erreur container">
<Icon name="ka" size="4.5rem" />
<p class="code">{page.status}</p>
{#if is404}
<h1 lang="gcf">Paj-la pa la</h1>
<p class="lead">
Cette page n'existe pas ou a été déplacée. Mais l'histoire du GONG, elle, est toujours là.
</p>
{:else}
<h1>Erreur {page.status}</h1>
<p class="lead">{page.error?.message ?? 'Une erreur est survenue.'}</p>
{/if}
<div class="liens">
<a class="btn btn--fill" href="/">Retour à l'accueil</a>
<a class="btn" href="/histoire/">L'histoire du GONG</a>
</div>
</main>
<style>
.erreur {
min-height: 68dvh;
display: grid;
place-content: center;
justify-items: center;
text-align: center;
gap: 0.6rem;
padding-block: var(--space-5);
}
.code {
font-family: var(--font-display);
font-weight: 900;
font-size: clamp(3rem, 2rem + 6vw, 6rem);
line-height: 1;
color: var(--accent);
margin: 0;
}
.lead {
max-width: 46ch;
color: var(--muted);
}
.liens {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
justify-content: center;
margin-top: var(--space-2);
}
</style>
+52
View File
@@ -0,0 +1,52 @@
<script lang="ts">
import '$lib/styles/gong-tokens.css';
import '$lib/styles/base.css';
import { onMount } from 'svelte';
import { onNavigate, afterNavigate } from '$app/navigation';
import Nav from '$lib/components/Nav.svelte';
import Footer from '$lib/components/Footer.svelte';
import ScrollProgressBar from '$lib/components/ScrollProgressBar.svelte';
import { initSmoothScroll } from '$lib/motion/scroll';
let { children } = $props();
// Smooth scroll Lenis — une seule instance, gate reduced-motion interne.
onMount(() => {
let cleanup: (() => void) | undefined;
initSmoothScroll().then((c) => (cleanup = c));
return () => cleanup?.();
});
// Transitions de page — View Transitions API, fallback = navigation instantanée.
onNavigate((navigation) => {
if (!document.startViewTransition) return;
return new Promise((resolve) => {
document.startViewTransition(async () => {
resolve();
await navigation.complete;
});
});
});
// Accessibilité : après un changement de route, déplacer le focus sur le contenu.
afterNavigate(() => {
const main = document.getElementById('contenu');
if (main) {
main.setAttribute('tabindex', '-1');
main.focus({ preventScroll: true });
}
});
</script>
<a class="skip-link" href="#contenu">Aller au contenu</a>
<ScrollProgressBar />
<Nav />
{@render children()}
<Footer />
<style>
:global(::view-transition-old(root)),
:global(::view-transition-new(root)) {
animation-duration: var(--dur-mesure);
}
</style>
+3
View File
@@ -0,0 +1,3 @@
// Site 100 % pré-rendu, statique (adapter-static), URLs historiques avec slash final.
export const prerender = true;
export const trailingSlash = 'always';
+24
View File
@@ -0,0 +1,24 @@
import { getActualites } from '$lib/server/actualites';
import { getArchives } from '$lib/server/archives';
export function load() {
const actualites = getActualites()
.slice(0, 3)
.map(({ slug, titre, date, iso, chapeau, couverture, couvertureAlt }) => ({
slug,
titre,
date,
iso,
chapeau,
couverture,
couvertureAlt
}));
const archives = getArchives().map(({ slug, numero, titre, date, couverture }) => ({
slug,
numero,
titre,
date,
couverture
}));
return { actualites, archives };
}
+406
View File
@@ -0,0 +1,406 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import Icon from '$lib/components/Icon.svelte';
import { reveal } from '$lib/motion/reveal';
import { SITE, presentation } from '$lib/data/gong';
let { data } = $props();
const parcours = [
{ href: '/histoire/', icon: 'clock', titre: 'Histoire', desc: 'De la fondation en 1963 à la dissolution en 1968 : la chronologie complète.' },
{ href: '/me-67/', icon: 'flag', titre: 'Mé 67', desc: "Les tueries de mai 1967 à Pointe-à-Pitre, longtemps occultées." },
{ href: '/proces-1968/', icon: 'scale', titre: 'Procès de 1968', desc: '18 Guadeloupéens jugés à Paris ; Sartre et Césaire témoignent.' },
{ href: '/militants/', icon: 'users', titre: 'Militants', desc: 'Sainton, Nestor, Manville, Bangou, Glaude… les femmes et les hommes du GONG.' },
{ href: '/ideologie/', icon: 'glo', titre: 'Idéologie', desc: "Marxisme-léninisme, tiers-mondisme et lutte de libération nationale." },
{ href: '/heritage/', icon: 'memory', titre: 'Héritage', desc: 'UPLG, UGTG, mémoire de Mé 67 : ce que le GONG a laissé.' },
{ href: '/archives/', icon: 'book', titre: 'Archives', desc: 'Les numéros numérisés du journal Gong-Information (1966-1967).' }
];
const webPage = [
{
'@type': 'WebPage',
'@id': `${SITE.url}/#webpage`,
url: `${SITE.url}/`,
name: `${SITE.nomComplet} — GONG`,
description: SITE.description,
isPartOf: { '@id': `${SITE.url}/#website` },
about: { '@id': `${SITE.url}/#organization` },
inLanguage: 'fr-FR'
}
];
</script>
<Seo
title="GONG — Groupe d'Organisation Nationale de la Guadeloupe"
description="Le GONG, organisation indépendantiste guadeloupéenne (1963-1968) : histoire, Mé 67, procès de 1968, militants et héritage. Un dossier documentaire sourcé."
path="/"
graph={webPage}
/>
<main id="contenu">
<!-- HERO -->
<section class="hero">
<div class="container hero__inner">
<img class="hero__logo" src="/img/gong.png" alt="Logo du GONG" width="132" height="132" />
<img class="hero__flag" src="/img/gong-drapeau.png" alt="Drapo Gwadlup (GONG)" width="220" height="147" />
<h1 class="hero__title">GONG</h1>
<p class="hero__full">{presentation.nomComplet}</p>
<p class="hero__slogan">« Briser les urnes colonialistes.<br />Conquérir l'indépendance nationale. »</p>
<p class="hero__creole" lang="gcf">Listwa a on pèp ki goumé pou libèté a-y.</p>
<div class="hero__cta">
<a class="btn btn--fill" href="/histoire/">Découvrir l'histoire</a>
<a class="btn" href="/me-67/">Comprendre Mé 67</a>
</div>
</div>
</section>
<!-- RÉSUMÉ (zone A AI-Overview) -->
<section class="section--tight">
<div class="container lecture">
<Resume
titre="Qu'est-ce que le GONG ?"
lead="Le GONG (Groupe d'Organisation Nationale de la Guadeloupe) était une organisation politique indépendantiste et anticolonialiste guadeloupéenne, fondée le 23 juin 1963 à Paris et dissoute de facto en 1968 après la répression des émeutes de mai 1967 et le procès de ses militants."
points={[
'Fondé le 23 juin 1963 par danciens étudiants de lAGEG (dont Pierre Sainton).',
'Objectif : lindépendance nationale de la Guadeloupe et une révolution socialiste.',
'Impliqué dans les événements de « Mé 67 » (26-28 mai 1967).',
'18 de ses membres jugés à Paris en 1968 : 13 acquittés, 6 condamnés avec sursis.'
]}
/>
</div>
</section>
<!-- CHIFFRES CLÉS -->
<section class="section--tight">
<div class="container">
<div class="stats">
<div class="stat" use:reveal={0}>
<span class="stat__num">1963</span><span class="stat__lab">Fondation, à Paris</span>
</div>
<div class="stat" use:reveal={1}>
<span class="stat__num">26 mai 1967</span><span class="stat__lab">Première victime : Jacques Nestor</span>
</div>
<div class="stat" use:reveal={2}>
<span class="stat__num">80200</span><span class="stat__lab">Victimes estimées de Mé 67</span>
</div>
<div class="stat" use:reveal={3}>
<span class="stat__num">18</span><span class="stat__lab">Accusés au procès de 1968</span>
</div>
</div>
</div>
</section>
<!-- PARCOURS -->
<section class="section">
<div class="container">
<SectionTitle title="Parcourir le dossier" />
<div class="grid-cards">
{#each parcours as p, i (p.href)}
<a class="card card--link" href={p.href} use:reveal={i}>
<Icon name={p.icon} size="1.8rem" />
<h3>{p.titre}</h3>
<p>{p.desc}</p>
<span class="card__more">Lire <Icon name="arrow-right" size="1em" /></span>
</a>
{/each}
</div>
</div>
</section>
<!-- DOCUMENTS FONDATEURS -->
<section class="section">
<div class="container">
<SectionTitle title="Les textes fondateurs" />
<div class="grid-cards grid-cards--2">
<article class="card card--vert" use:reveal={0}>
<Icon name="document" size="1.6rem" />
<h3>La Charte du GONG</h3>
<p class="muted">Juin 1963 — le texte adopté en assemblée générale qui pose le droit du peuple guadeloupéen à disposer de lui-même.</p>
<div class="card__actions">
<a class="btn btn--ghost" href="/charte/">Lire la charte</a>
<a class="btn btn--ghost" href="/assets/charte-du-gong-1963.pdf" rel="external noopener noreferrer" target="_blank">
PDF <Icon name="download" size="1em" />
</a>
</div>
</article>
<article class="card card--vert" use:reveal={1}>
<Icon name="document" size="1.6rem" />
<h3>Orientation & stratégie</h3>
<p class="muted">Le rapport sur la lutte révolutionnaire du peuple guadeloupéen : lutte de masse, suffrage universel, voie révolutionnaire.</p>
<div class="card__actions">
<a class="btn btn--ghost" href="/orientation/">Lire le document</a>
<a class="btn btn--ghost" href="/assets/orientation-et-strategie-de-la-lutte-revolutionnaire-du-peuple-guadeloupeen-1963.pdf" rel="external noopener noreferrer" target="_blank">
PDF <Icon name="download" size="1em" />
</a>
</div>
</article>
</div>
</div>
</section>
<!-- ARCHIVES — GONG-INFORMATION -->
{#if data.archives.length}
<section class="section archives-home">
<div class="container">
<SectionTitle title="Les documents originaux" />
<p class="archives-home__intro">
Les numéros numérisés de <strong>Gong-Information</strong>, le journal du GONG (1966-1967) :
transcription intégrale et scan à l'appui.
</p>
<div class="archives-home__grid">
{#each data.archives as a, i (a.slug)}
<a class="issue" href="/archives/{a.slug}/" use:reveal={i}>
<img src={a.couverture} alt="Couverture de {a.titre}" width="800" height="612" loading="lazy" decoding="async" />
<span class="issue__label">{a.numero} · {a.date}</span>
</a>
{/each}
</div>
<p class="center"><a class="btn btn--ghost" href="/archives/">Toutes les archives</a></p>
</div>
</section>
{/if}
<!-- ACTUALITÉS -->
{#if data.actualites.length}
<section class="section">
<div class="container">
<SectionTitle title="Actualités & mémoire" />
<div class="grid-cards">
{#each data.actualites as a, i (a.slug)}
<a class="card card--link" href="/actualites/{a.slug}/" use:reveal={i}>
{#if a.couverture}
<img class="card__cover" src={a.couverture} alt={a.couvertureAlt} loading="lazy" decoding="async" />
{/if}
<time datetime={a.iso} class="card__date">{a.date}</time>
<h3>{a.titre}</h3>
<p class="muted">{a.chapeau}</p>
</a>
{/each}
</div>
<p class="center"><a class="btn btn--ghost" href="/actualites/">Toutes les actualités</a></p>
</div>
</section>
{/if}
<!-- CTA FINAL -->
<section class="section cta-final">
<div class="container lecture center">
<SectionTitle title="Se souvenir, transmettre" />
<p>
Le GONG a été effacé des mémoires officielles pendant des décennies. Ce site rassemble des
sources académiques, journalistiques et archivistiques pour rendre son histoire accessible à
tous.
</p>
<div class="hero__cta center-cta">
<a class="btn btn--fill" href="/faq/">Questions fréquentes</a>
<a class="btn" href="/sources/">Voir les sources</a>
</div>
</div>
</section>
</main>
<style>
.hero {
text-align: center;
padding-top: var(--space-5);
background: radial-gradient(ellipse at 50% -10%, color-mix(in srgb, var(--rouge-gong) 12%, transparent), transparent 60%);
}
.hero__inner {
padding-bottom: var(--space-5);
}
.hero__logo {
width: 132px;
height: 132px;
margin: 0 auto var(--space-2);
}
.hero__flag {
width: 220px;
height: 147px;
margin: 0 auto var(--space-2);
}
.hero__kicker {
display: inline-flex;
flex-direction: column;
align-items: center;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.15em;
font-size: 0.85rem;
color: var(--muted);
}
.hero__title {
font-size: clamp(3.5rem, 2rem + 9vw, 8rem);
margin: 0.25rem 0 0;
letter-spacing: 0.02em;
}
.hero__full {
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(1rem, 0.9rem + 0.6vw, 1.3rem);
color: var(--creme);
margin-bottom: var(--space-3);
}
.hero__slogan {
font-family: var(--font-display);
font-weight: 800;
text-transform: uppercase;
font-size: clamp(1.3rem, 1rem + 1.6vw, 2rem);
line-height: 1.15;
color: var(--accent);
margin-bottom: 0.6rem;
}
.hero__creole {
color: var(--muted);
font-style: italic;
margin-bottom: var(--space-4);
}
.hero__cta {
display: flex;
gap: var(--space-2);
justify-content: center;
flex-wrap: wrap;
}
.center-cta {
margin-top: var(--space-3);
}
.stats {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: var(--space-2);
}
.stat {
background: var(--card-bg);
border: 1px solid var(--line);
border-top: 3px solid var(--accent);
border-radius: var(--radius-md);
padding: var(--space-3);
display: flex;
flex-direction: column;
gap: 0.3rem;
}
.stat__num {
font-family: var(--font-display);
font-weight: 900;
font-size: 1.7rem;
color: var(--creme);
line-height: 1;
}
.stat__lab {
font-size: 0.88rem;
color: var(--muted);
}
.grid-cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--space-3);
}
.grid-cards--2 {
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}
.card h3 {
margin: 0.6rem 0 0.4rem;
}
.card p {
color: var(--muted);
margin: 0;
}
.card .muted {
color: var(--muted);
}
.card__more {
margin-top: 0.8rem;
display: inline-flex;
align-items: center;
gap: 0.35rem;
font-family: var(--font-display);
text-transform: uppercase;
font-size: 0.78rem;
letter-spacing: 0.05em;
color: var(--accent);
}
.card__cover {
width: calc(100% + 2 * var(--space-3));
margin: calc(-1 * var(--space-3)) calc(-1 * var(--space-3)) var(--space-2);
border-radius: var(--radius-md) var(--radius-md) 0 0;
aspect-ratio: 3 / 2;
object-fit: cover;
}
.card__date {
font-size: 0.8rem;
color: var(--muted-fort);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.card__actions {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: 0.8rem;
}
.center {
text-align: center;
}
.center .btn {
margin-inline: auto;
}
.cta-final {
background: var(--noir-profond);
border-block: 1px solid var(--line);
}
.archives-home {
background: var(--noir-profond);
border-block: 1px solid var(--line);
}
.archives-home__intro {
color: var(--muted);
max-width: var(--container-lecture);
margin-top: -0.5rem;
margin-bottom: var(--space-3);
}
.archives-home__grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: var(--space-3);
margin-bottom: var(--space-3);
}
.issue {
display: block;
position: relative;
border: 1px solid var(--line);
border-radius: var(--radius-md);
overflow: hidden;
background: var(--noir);
transition:
transform var(--dur-mesure) var(--ease-ka),
border-color var(--dur-mesure) var(--ease-ka);
}
.issue:hover {
transform: translateY(-4px);
border-color: var(--accent);
}
.issue img {
width: 100%;
aspect-ratio: 800 / 612;
object-fit: cover;
object-position: top;
}
.issue__label {
display: block;
padding: 0.5rem 0.75rem;
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
font-size: 0.78rem;
letter-spacing: 0.03em;
color: var(--accent);
border-top: 1px solid var(--line);
}
</style>
+14
View File
@@ -0,0 +1,14 @@
import { getActualites } from '$lib/server/actualites';
export function load() {
const actualites = getActualites().map(({ slug, titre, date, iso, chapeau, couverture, couvertureAlt }) => ({
slug,
titre,
date,
iso,
chapeau,
couverture,
couvertureAlt
}));
return { actualites };
}
+83
View File
@@ -0,0 +1,83 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
let { data } = $props();
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Actualités', path: '/actualites/' }
];
</script>
<Seo
title="Actualités"
description="Communiqués, commémorations et annonces du GONG et de sa mémoire en Guadeloupe."
path="/actualites/"
graph={[webPage('/actualites/', 'Actualités du GONG', 'Communiqués et commémorations.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Actualités</h1>
{#if data.actualites.length}
<ul class="grille">
{#each data.actualites as a, i (a.slug)}
<li>
<a class="card card--link" href="/actualites/{a.slug}/" use:reveal={i}>
{#if a.couverture}
<img class="cover" src={a.couverture} alt={a.couvertureAlt} loading="lazy" decoding="async" />
{/if}
<time datetime={a.iso} class="date">{a.date}</time>
<h2>{a.titre}</h2>
<p>{a.chapeau}</p>
</a>
</li>
{/each}
</ul>
{:else}
<p class="lecture muted">Aucune actualité pour le moment.</p>
{/if}
</div>
</main>
<style>
.grille {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: var(--space-3);
}
.cover {
width: calc(100% + 2 * var(--space-3));
margin: calc(-1 * var(--space-3)) calc(-1 * var(--space-3)) var(--space-2);
border-radius: var(--radius-md) var(--radius-md) 0 0;
aspect-ratio: 3 / 2;
object-fit: cover;
}
.date {
font-size: 0.8rem;
color: var(--muted-fort);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.grille h2 {
font-size: 1.2rem;
text-transform: none;
margin: 0.3rem 0;
}
.grille p {
color: var(--muted);
margin: 0;
}
.muted {
color: var(--muted);
}
</style>
@@ -0,0 +1,11 @@
import { error } from '@sveltejs/kit';
import { getActualites, getActualite } from '$lib/server/actualites';
import type { EntryGenerator } from './$types';
export const entries: EntryGenerator = () => getActualites().map((a) => ({ slug: a.slug }));
export function load({ params }) {
const article = getActualite(params.slug);
if (!article) error(404, 'Actualité introuvable');
return { article };
}
+93
View File
@@ -0,0 +1,93 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import { SITE } from '$lib/data/gong';
let { data } = $props();
const a = $derived(data.article);
const crumbs = $derived([
{ name: 'Accueil', path: '/' },
{ name: 'Actualités', path: '/actualites/' },
{ name: a.titre, path: `/actualites/${a.slug}/` }
]);
const articleNode = $derived({
'@type': 'Article',
'@id': `${SITE.url}/actualites/${a.slug}/#article`,
headline: a.titre,
description: a.chapeau,
datePublished: a.iso,
dateModified: a.iso,
inLanguage: 'fr-FR',
...(a.couverture ? { image: SITE.url + a.couverture } : {}),
author: { '@id': `${SITE.url}/#organization` },
publisher: { '@id': `${SITE.url}/#organization` },
isPartOf: { '@id': `${SITE.url}/#website` },
mainEntityOfPage: `${SITE.url}/actualites/${a.slug}/`
});
</script>
<Seo
title={a.titre}
description={a.chapeau}
path={`/actualites/${a.slug}/`}
type="article"
image={a.couverture ?? '/gong-logo.png'}
imageAlt={a.couvertureAlt ?? a.titre}
publishedTime={a.iso}
modifiedTime={a.iso}
graph={[articleNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<article>
<header class="art-head">
<time datetime={a.iso} class="date">{a.date}</time>
<h1>{a.titre}</h1>
<p class="chapeau">{a.chapeau}</p>
</header>
{#if a.couverture}
<figure class="art-cover">
<img src={a.couverture} alt={a.couvertureAlt} width="1200" height="800" />
</figure>
{/if}
<!-- Contenu first-party (Sveltia CMS, rendu markdown côté serveur). -->
<div class="prose art-body">{@html a.html}</div>
</article>
<p><a class="btn btn--ghost" href="/actualites/">← Toutes les actualités</a></p>
</div>
</main>
<style>
.art-head {
max-width: var(--container-lecture);
}
.date {
font-size: 0.85rem;
color: var(--muted-fort);
text-transform: uppercase;
letter-spacing: 0.04em;
}
.chapeau {
font-size: 1.2rem;
color: var(--muted);
font-style: italic;
}
.art-cover {
margin: var(--space-3) 0;
max-width: 900px;
}
.art-cover img {
width: 100%;
border-radius: var(--radius-md);
border: 1px solid var(--line);
}
.art-body {
margin-top: var(--space-3);
}
</style>
+14
View File
@@ -0,0 +1,14 @@
import { getArchives } from '$lib/server/archives';
export function load() {
const archives = getArchives().map(({ slug, numero, titre, date, iso, chapeau, couverture }) => ({
slug,
numero,
titre,
date,
iso,
chapeau,
couverture
}));
return { archives };
}
+161
View File
@@ -0,0 +1,161 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import Icon from '$lib/components/Icon.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
let { data } = $props();
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Archives', path: '/archives/' }
];
</script>
<Seo
title="Archives — Gong-Information"
description="Les numéros numérisés du journal Gong-Information (« Journal du patriote guadeloupéen »), organe du GONG : n° 16 (1966), n° spécial (1967) et n° 19 (1967). Transcriptions et scans PDF."
path="/archives/"
graph={[webPage('/archives/', 'Archives — Gong-Information', 'Numéros numérisés du journal du GONG.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Archives — Gong-Information</h1>
<div class="lecture">
<Resume
lead="« Gong-Information — Journal du patriote guadeloupéen » était l'organe politique et théorique du GONG. Imprimé clandestinement en Belgique et diffusé de 1964 à 1967, il portait les analyses et mots d'ordre du mouvement. Voici les numéros numérisés, transcription et scan à l'appui."
points={[
'Sources primaires : les numéros mêmes du journal.',
'Transcription intégrale + scan PDF téléchargeable de chaque numéro.',
'« Un peuple qui décide de se gouverner est un peuple qui entreprend de se critiquer et de sorganiser. »'
]}
/>
</div>
<ul class="grille">
{#each data.archives as a, i (a.slug)}
<li>
<a class="card card--link" href="/archives/{a.slug}/" use:reveal={i}>
<img class="cover" src={a.couverture} alt="Couverture de {a.titre}" width="800" height="612" loading="lazy" decoding="async" />
<span class="num">{a.numero} · {a.date}</span>
<h2>{a.titre}</h2>
<p>{a.chapeau}</p>
<span class="more">Lire le numéro <Icon name="arrow-right" size="1em" /></span>
</a>
</li>
{/each}
</ul>
<section class="section--tight lecture">
<h2 class="ext-titre"><span class="flag-chip" aria-hidden="true"></span> Consulter les fonds institutionnels</h2>
<p class="muted">
D'autres exemplaires et documents du GONG sont conservés dans des archives publiques et
universitaires (consultation soumise à leurs conditions) :
</p>
<ul class="ext">
<li>
<a href="https://agorha.inha.fr/ark:/54721/561eba6d-23cf-48c3-8b78-4890c0e80b70" rel="external noopener noreferrer" target="_blank">
INHA — AGORHA <Icon name="external" size="0.8em" /></a> : notice de la revue Gong Information (1964-1967).
</li>
<li>
<a href="https://sismo.inha.fr/s/fr/journal/259761" rel="external noopener noreferrer" target="_blank">
INHA — SISMO <Icon name="external" size="0.8em" /></a> : base des périodiques militants.
</li>
<li>
<a href="https://pandor.u-bourgogne.fr/archives-en-ligne/ark:/62246/r42561znt7jqck/f1?context=ead::FRMSH021_00012_PK-3-2-4-27" rel="external noopener noreferrer" target="_blank">
Pandor — MSH Dijon <Icon name="external" size="0.8em" /></a> : Gong Information n° 19 numérisé.
</li>
<li>
<a href="https://journals.openedition.org/slaveries/3788" rel="external noopener noreferrer" target="_blank">
Sylvain Mary (2021) <Icon name="external" size="0.8em" /></a> : analyse iconographique de la propagande du GONG (affiche « Briser les urnes colonialistes », Archives nationales 5W/728).
</li>
</ul>
</section>
<p class="lecture note">
Documents issus du fonds du GONG, numérisés et transcrits. Voir aussi la présentation des
<a href="/publications/">publications du mouvement</a> et les
<a href="/sources/">sources</a>.
</p>
</div>
</main>
<style>
.grille {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: var(--space-3);
}
.cover {
width: calc(100% + 2 * var(--space-3));
margin: calc(-1 * var(--space-3)) calc(-1 * var(--space-3)) var(--space-2);
border-radius: var(--radius-md) var(--radius-md) 0 0;
aspect-ratio: 800 / 612;
object-fit: cover;
object-position: top;
background: var(--noir-profond);
}
.num {
font-family: var(--font-display);
font-weight: 700;
text-transform: uppercase;
font-size: 0.8rem;
letter-spacing: 0.04em;
color: var(--accent);
}
.grille h2 {
font-size: 1.15rem;
text-transform: none;
margin: 0.3rem 0;
}
.grille p {
color: var(--muted);
margin: 0;
font-size: 0.94rem;
}
.more {
margin-top: 0.8rem;
display: inline-flex;
align-items: center;
gap: 0.35rem;
font-family: var(--font-display);
text-transform: uppercase;
font-size: 0.75rem;
letter-spacing: 0.05em;
color: var(--accent);
}
.ext-titre {
font-size: 1.3rem;
margin-top: var(--space-5);
}
.ext-titre .flag-chip {
display: inline-block;
width: 40px;
margin-right: 0.5rem;
vertical-align: middle;
}
.muted {
color: var(--muted);
}
.ext {
display: grid;
gap: 0.5rem;
padding-left: 1.1rem;
color: var(--muted);
font-size: 0.94rem;
}
.note {
margin-top: var(--space-4);
color: var(--muted-fort);
font-size: 0.88rem;
}
</style>
@@ -0,0 +1,11 @@
import { error } from '@sveltejs/kit';
import { getArchives, getArchive } from '$lib/server/archives';
import type { EntryGenerator } from './$types';
export const entries: EntryGenerator = () => getArchives().map((a) => ({ slug: a.slug }));
export function load({ params }) {
const archive = getArchive(params.slug);
if (!archive) error(404, 'Numéro introuvable');
return { archive };
}
+131
View File
@@ -0,0 +1,131 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { SITE } from '$lib/data/gong';
let { data } = $props();
const a = $derived(data.archive);
const crumbs = $derived([
{ name: 'Accueil', path: '/' },
{ name: 'Archives', path: '/archives/' },
{ name: a.titre, path: `/archives/${a.slug}/` }
]);
const articleNode = $derived({
'@type': ['Article', 'CreativeWork'],
'@id': `${SITE.url}/archives/${a.slug}/#document`,
headline: a.titre,
alternativeHeadline: 'Gong-Information — Journal du patriote guadeloupéen',
description: a.chapeau,
datePublished: a.iso,
inLanguage: 'fr-FR',
image: SITE.url + a.couverture,
isPartOf: { '@id': `${SITE.url}/#website` },
publisher: { '@id': `${SITE.url}/#organization` },
about: { '@id': `${SITE.url}/#organization` },
associatedMedia: { '@type': 'MediaObject', contentUrl: SITE.url + a.pdf, encodingFormat: 'application/pdf' }
});
</script>
<Seo
title={a.titre}
description={a.chapeau}
path={`/archives/${a.slug}/`}
type="article"
image={a.couverture}
imageAlt={`Couverture de ${a.titre}`}
publishedTime={a.iso}
graph={[articleNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<article>
<header class="doc-head">
<p class="kicker"><span class="flag-chip" aria-hidden="true"></span> Gong-Information · {a.date}</p>
<h1>{a.titre}</h1>
<p class="chapeau">{a.chapeau}</p>
<a class="btn btn--ghost" href={a.pdf} rel="external noopener noreferrer" target="_blank">
Télécharger le scan (PDF) <Icon name="download" size="1em" />
</a>
</header>
<div class="doc-body">
<figure class="cover">
<img src={a.couverture} alt="Couverture de {a.titre}" width="800" height="612" loading="lazy" decoding="async" />
<figcaption>Couverture du numéro. Fonds du GONG.</figcaption>
</figure>
<div class="prose transcription">
<h2 class="sr-only">Transcription</h2>
<!-- Contenu first-party (transcription du journal, fonds du GONG). -->
{@html a.html}
</div>
</div>
</article>
<p><a class="btn btn--ghost" href="/archives/">← Tous les numéros</a></p>
</div>
</main>
<style>
.doc-head {
max-width: var(--container-lecture);
margin-bottom: var(--space-4);
}
.kicker {
display: inline-flex;
flex-direction: column;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 0.85rem;
color: var(--muted);
}
.chapeau {
font-size: 1.15rem;
color: var(--muted);
font-style: italic;
margin-bottom: var(--space-2);
}
.doc-body {
display: grid;
grid-template-columns: 300px 1fr;
gap: var(--space-4);
align-items: start;
}
.cover {
margin: 0;
position: sticky;
top: calc(var(--nav-h) + 1rem);
}
.cover img {
width: 100%;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--noir-profond);
}
.cover figcaption {
margin-top: 0.5rem;
font-size: 0.8rem;
color: var(--muted-fort);
}
.transcription {
max-width: none;
}
@media (max-width: 800px) {
.doc-body {
grid-template-columns: 1fr;
}
.cover {
position: static;
max-width: 300px;
}
}
</style>
+5
View File
@@ -0,0 +1,5 @@
import { getDocument } from '$lib/server/documents';
export function load() {
return { html: getDocument('charte-1963') };
}
+83
View File
@@ -0,0 +1,83 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { webPage } from '$lib/seo';
let { data } = $props();
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Charte de 1963', path: '/charte/' }
];
</script>
<Seo
title="La Charte du GONG (juin 1963)"
description="Le texte intégral de la Charte du GONG adoptée en assemblée générale en juin 1963 : le droit du peuple guadeloupéen à disposer de lui-même, la souveraineté nationale et les objectifs de la révolution."
path="/charte/"
type="article"
graph={[webPage('/charte/', 'Charte du GONG (1963)', 'Texte fondateur du GONG adopté en juin 1963.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<header class="doc-head">
<p class="doc-kicker"><span class="flag-chip" aria-hidden="true"></span> Texte fondateur · Juin 1963</p>
<h1>La Charte du GONG</h1>
<a class="btn btn--ghost" href="/assets/charte-du-gong-1963.pdf" rel="external noopener noreferrer" target="_blank">
Voir l'original (PDF) <Icon name="download" size="1em" />
</a>
</header>
<article class="prose doc">
<!-- Contenu first-party (transcription du document de 1963, rendu markdown côté serveur). -->
{@html data.html}
</article>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/orientation/">Orientation & stratégie →</a>
<a class="btn btn--ghost" href="/ideologie/">L'idéologie du GONG →</a>
</nav>
</div>
</main>
<style>
.doc-head {
margin-bottom: var(--space-4);
}
.doc-kicker {
display: inline-flex;
flex-direction: column;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 0.85rem;
color: var(--muted);
}
.doc-head .btn {
margin-top: var(--space-2);
}
.doc :global(h2) {
margin-top: var(--space-4);
padding-top: var(--space-2);
border-top: 1px solid var(--line);
font-size: 1.35rem;
}
.doc :global(h3) {
color: var(--accent);
font-size: 1.1rem;
}
.doc :global(blockquote) {
font-size: 1.05rem;
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
</style>
+107
View File
@@ -0,0 +1,107 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { SITE, contact } from '$lib/data/gong';
import { webPage } from '$lib/seo';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Contact', path: '/contact/' }
];
const contactNode = {
'@type': 'ContactPage',
'@id': `${SITE.url}/contact/#contactpage`,
url: `${SITE.url}/contact/`,
name: 'Contact — GONG',
isPartOf: { '@id': `${SITE.url}/#website` },
about: { '@id': `${SITE.url}/#organization` },
inLanguage: 'fr-FR'
};
const canaux = [
{ icon: 'mail', label: 'E-mail (ProtonMail)', valeur: contact.email, href: `mailto:${contact.email}`, ext: false },
{ icon: 'globe', label: 'Bokante — réseau social', valeur: 'GONG', href: contact.bokante, ext: true },
{ icon: 'video', label: 'Gade — chaîne vidéo (PeerTube)', valeur: 'GONG TV', href: contact.gade, ext: true },
{ icon: 'book', label: 'Code source du site (forge)', valeur: 'labola.o-k-i.net', href: contact.forge, ext: true }
];
</script>
<Seo
title="Contact"
description="Contacter le GONG et l'équipe éditoriale du site : e-mail ProtonMail, réseau social Bokantaj, chaîne vidéo Gade et code source sur la forge de l'écosystème OKI."
path="/contact/"
graph={[webPage('/contact/', 'Contact — GONG', 'Nous contacter.'), contactNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Contact</h1>
<p class="lecture intro">
Une question, une correction, un témoignage ou une archive à partager ? Écrivez-nous. Ce site
est un travail de mémoire ouvert et évolutif.
</p>
<ul class="canaux">
{#each canaux as c (c.href)}
<li>
<a
class="card card--link"
href={c.href}
rel={c.ext ? 'external noopener noreferrer' : undefined}
target={c.ext ? '_blank' : undefined}
>
<Icon name={c.icon} size="1.6rem" />
<h2>{c.label}</h2>
<p>{c.valeur}</p>
</a>
</li>
{/each}
</ul>
<address class="adresse lecture">
<h2>Éditeur</h2>
<p>
ORGANISATION KA INTERNATIONALE<br />
36 rue Lethière, 97100 Basse-Terre, Guadeloupe<br />
<a href="mailto:{contact.emailOKI}">{contact.emailOKI}</a>
</p>
</address>
</div>
</main>
<style>
.intro {
color: var(--muted);
margin-bottom: var(--space-4);
}
.canaux {
list-style: none;
margin: 0 0 var(--space-5);
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: var(--space-3);
}
.canaux h2 {
font-size: 1.05rem;
text-transform: none;
margin: 0.6rem 0 0.2rem;
}
.canaux p {
color: var(--muted);
margin: 0;
}
.adresse {
font-style: normal;
}
.adresse h2 {
font-size: 1.1rem;
}
.adresse p {
color: var(--muted);
}
</style>
+154
View File
@@ -0,0 +1,154 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import { SITE } from '$lib/data/gong';
import { webPage } from '$lib/seo';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Questions fréquentes', path: '/faq/' }
];
// Le texte des réponses est IDENTIQUE à celui du schema (aucun contenu caché).
const faq = [
{
q: "Qu'est-ce que le GONG ?",
r: "Le GONG (Groupe d'Organisation Nationale de la Guadeloupe) était une organisation politique indépendantiste et anticolonialiste guadeloupéenne. Fondé le 23 juin 1963 à Paris, il militait pour l'indépendance de la Guadeloupe et fut dissous de fait en 1968."
},
{
q: 'Que signifie le sigle GONG ?',
r: "GONG signifie « Groupe d'Organisation Nationale de la Guadeloupe ». On l'écrit aussi G.O.N.G. Le mouvement se réclamait du marxisme-léninisme et de la lutte de libération nationale."
},
{
q: 'Quand et par qui le GONG a-t-il été fondé ?',
r: "Le GONG a été fondé le 23 juin 1963 à Paris, dans la clandestinité, par d'anciens militants de l'Association générale des étudiants guadeloupéens (AGEG), parmi lesquels Pierre Sainton, Jacques Nestor, Marcel Manville, Henri Bangou et Serge Glaude."
},
{
q: "Quel était l'objectif du GONG ?",
r: "L'objectif principal du GONG était l'indépendance nationale de la Guadeloupe, suivie d'une révolution socialiste. Son programme incluait la réforme agraire, l'industrialisation, l'unité antillaise et la solidarité tiers-mondiste."
},
{
q: "Qu'est-ce que « Mé 67 » ?",
r: "« Mé 67 » désigne les émeutes de mai 1967 en Guadeloupe. Du 26 au 28 mai 1967, la répression d'une grève ouvrière à Pointe-à-Pitre a fait, selon les historiens, entre 80 et 200 victimes, contre 7 à 8 morts selon le bilan officiel."
},
{
q: 'Le GONG était-il responsable des émeutes de mai 1967 ?',
r: "Non. Deux rapports de police de 1967 (commissaire Gévaudan) ont conclu à l'absence de responsabilité directe du GONG : les émeutes étaient spontanées. Le mouvement a néanmoins servi de prétexte à la répression et à l'arrestation de ses militants."
},
{
q: "Qu'est-il arrivé aux militants du GONG ?",
r: "Plus de 70 personnes ont été arrêtées. Dix-huit Guadeloupéens ont été jugés à Paris en février-mars 1968 devant la Cour de sûreté de l'État. Le verdict — 13 acquittements et 6 peines avec sursis — a été vécu comme une victoire politique."
},
{
q: 'Que signifie « Briser les urnes colonialistes » ?',
r: "« Briser les urnes colonialistes. Conquérir l'indépendance nationale » était le mot d'ordre du GONG lors des législatives de mars 1967. Il dénonçait des élections jugées frauduleuses et appelait au boycott des scrutins organisés par le pouvoir colonial."
},
{
q: 'Le GONG existe-t-il encore aujourdhui ?',
r: "Non, le GONG a été dissous de fait en 1968. Mais son héritage perdure : plusieurs mouvements en sont issus, notamment l'UPLG (1978), toujours active en 2026, ainsi que le syndicat UGTG. Le 26 mai reste une date de commémoration."
},
{
q: 'Qui était Pierre Sainton ?',
r: 'Pierre Sainton (vers 1924 - 2018) était le fondateur principal et lidéologue du GONG. Médecin généraliste à Capesterre-Belle-Eau, il prononça le discours fondateur du mouvement en Guadeloupe le 30 mai 1964 sur la stèle de Delgrès.'
}
];
const faqNode = {
'@type': 'FAQPage',
'@id': `${SITE.url}/faq/#faq`,
mainEntity: faq.map((f) => ({
'@type': 'Question',
name: f.q,
acceptedAnswer: { '@type': 'Answer', text: f.r }
}))
};
</script>
<Seo
title="Qu'est-ce que le GONG ? Questions fréquentes"
description="Réponses aux questions les plus fréquentes sur le GONG : définition, fondation, objectifs, Mé 67, procès de 1968 et héritage. L'essentiel sur le mouvement indépendantiste guadeloupéen."
path="/faq/"
graph={[webPage('/faq/', 'Questions fréquentes sur le GONG', 'FAQ sur le GONG.'), faqNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Qu'est-ce que le GONG ?</h1>
<p class="lecture intro">Les réponses essentielles, en quelques phrases.</p>
<div class="faq lecture">
{#each faq as f (f.q)}
<details>
<summary>{f.q}</summary>
<p>{f.r}</p>
</details>
{/each}
</div>
<div class="apres lecture">
<SectionTitle title="Aller plus loin" as="h2" />
<div class="liens">
<a class="btn btn--ghost" href="/histoire/">Histoire complète</a>
<a class="btn btn--ghost" href="/me-67/">Mé 67</a>
<a class="btn btn--ghost" href="/sources/">Sources</a>
</div>
</div>
</div>
</main>
<style>
.intro {
color: var(--muted);
margin-bottom: var(--space-3);
}
.faq {
display: grid;
gap: 0.6rem;
}
details {
background: var(--card-bg);
border: 1px solid var(--line);
border-left: 4px solid var(--accent);
border-radius: var(--radius-md);
padding: 0 var(--space-3);
}
summary {
font-family: var(--font-display);
font-weight: 700;
font-size: 1.05rem;
cursor: pointer;
padding: var(--space-2) 0;
list-style: none;
display: flex;
justify-content: space-between;
gap: 1rem;
align-items: center;
}
summary::-webkit-details-marker {
display: none;
}
summary::after {
content: '+';
font-size: 1.5rem;
color: var(--accent);
flex: none;
}
details[open] summary::after {
content: '';
}
details p {
margin: 0 0 var(--space-2);
color: var(--muted);
}
.apres {
margin-top: var(--space-5);
}
.liens {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
}
</style>
+184
View File
@@ -0,0 +1,184 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import Icon from '$lib/components/Icon.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
import { heritage as h, repression as r } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Héritage', path: '/heritage/' }
];
</script>
<Seo
title="L'héritage du GONG"
description="Répression, dissolution puis postérité : l'UPLG, l'UGTG, l'UTA et le mouvement indépendantiste guadeloupéen sont nés dans le sillage du GONG. Œuvres, mémoire et commémorations de Mé 67."
path="/heritage/"
type="article"
graph={[webPage('/heritage/', 'Héritage du GONG', 'Répression, mouvements issus, mémoire et postérité culturelle.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Héritage</h1>
<div class="lecture">
<Resume
lead="Décapité par la répression de 1967-1968, le GONG n'a pas disparu sans laisser de traces. Il a ensemencé tout le mouvement indépendantiste et syndical guadeloupéen : l'UPLG, l'UGTG, l'UTA et d'autres en sont directement issus."
points={[
'70+ arrestations, dissolution du mouvement en 1968.',
'LUPLG (1978) : premier parti indépendantiste structuré, toujours actif.',
'LUGTG (1973) : syndicat de masse issu de la mouvance GONG/AGEG.',
'Mé 67 est aujourdhui une date de commémoration en Guadeloupe.'
]}
/>
</div>
<!-- RÉPRESSION -->
<section class="section--tight">
<SectionTitle title="La répression et la dissolution" as="h2" id="repression" />
<div class="lecture prose">
<p><strong>Arrestations.</strong> {r.arrestations}</p>
<p><strong>Incarcération.</strong> {r.incarceration}. {r.dissolution}.</p>
<h3>Conséquences</h3>
<ul>
{#each r.consequences as c (c)}
<li>{c}</li>
{/each}
</ul>
<h3>Les responsables de la répression</h3>
<ul>
{#each r.responsables as resp (resp.nom)}
<li><strong>{resp.nom}</strong>{resp.role}. {resp.note}</li>
{/each}
</ul>
</div>
</section>
<!-- MOUVEMENTS ISSUS -->
<section class="section--tight">
<SectionTitle title="Les mouvements héritiers" as="h2" id="mouvements" />
<ul class="grille">
{#each h.mouvements as m, i (m.nom)}
<li class="card card--vert" use:reveal={i}>
{#if m.nom.startsWith('UPLG')}
<img class="flag-illus" src="/images/drapeau-uplg.svg" alt="Drapeau proposé par l'UPLG pour une Guadeloupe indépendante : bandes vertes, rouge, blanche et jaune avec une étoile." width="120" height="60" loading="lazy" />
{/if}
<span class="date">{m.dateCreation}</span>
<h3>{m.nom}</h3>
<p>{m.description}</p>
</li>
{/each}
</ul>
</section>
<!-- INFLUENCE CULTURELLE -->
<section class="section--tight">
<SectionTitle title="Dans la culture" as="h2" id="culture" />
<ul class="oeuvres">
{#each h.influenceCulturelle as o, i (o.oeuvre)}
<li class="oeuvre" use:reveal={i}>
<Icon name="book" size="1.4rem" />
<div>
<h3>{o.oeuvre} <span class="an">· {o.date}</span></h3>
<p class="auteur">{o.auteur}{o.type}</p>
<p class="sujet">{o.sujet}</p>
</div>
</li>
{/each}
</ul>
</section>
<!-- MÉMOIRE -->
<section class="section--tight">
<SectionTitle title="La mémoire" as="h2" id="memoire" />
<ul class="lecture prose">
{#each h.memoire as mem (mem)}
<li>{mem}</li>
{/each}
</ul>
</section>
<p class="src lecture">Sources : {h.source}.</p>
</div>
</main>
<style>
.grille {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: var(--space-2);
}
.flag-illus {
width: 120px;
height: auto;
border: 1px solid var(--line);
border-radius: 2px;
margin-bottom: 0.6rem;
}
.date {
font-family: var(--font-display);
font-weight: 700;
color: var(--vert-gong);
font-size: 0.85rem;
}
.grille h3 {
font-size: 1.05rem;
text-transform: none;
margin: 0.3rem 0;
}
.grille p {
color: var(--muted);
margin: 0;
font-size: 0.94rem;
}
.oeuvres {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--space-2);
max-width: var(--container-lecture);
}
.oeuvre {
display: flex;
gap: var(--space-2);
background: var(--card-bg);
border: 1px solid var(--line);
border-radius: var(--radius-md);
padding: var(--space-3);
}
.oeuvre h3 {
margin: 0 0 0.2rem;
font-size: 1.05rem;
text-transform: none;
}
.oeuvre .an {
color: var(--muted-fort);
font-weight: 400;
}
.auteur {
color: var(--accent);
font-size: 0.88rem;
margin: 0 0 0.3rem;
}
.sujet {
color: var(--muted);
margin: 0;
font-size: 0.94rem;
}
.src {
color: var(--muted-fort);
font-size: 0.85rem;
margin-top: var(--space-3);
}
</style>
+152
View File
@@ -0,0 +1,152 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import Timeline from '$lib/components/Timeline.svelte';
import { webPage } from '$lib/seo';
import { presentation, contexteHistorique, chronologie } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Histoire', path: '/histoire/' }
];
const ctx = contexteHistorique;
</script>
<Seo
title="Histoire du GONG (1963-1968)"
description="L'histoire du Groupe d'Organisation Nationale de la Guadeloupe : contexte colonial, fondation en 1963, activité clandestine, Mé 67, procès de 1968 et dissolution. Chronologie complète."
path="/histoire/"
type="article"
graph={[webPage('/histoire/', 'Histoire du GONG (1963-1968)', "Contexte, fondation, activité, répression et dissolution du GONG.")]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Histoire du GONG</h1>
<div class="lecture">
<Resume
lead="Fondé le 23 juin 1963 à Paris par d'anciens étudiants guadeloupéens, le GONG mène pendant quatre ans une lutte clandestine pour l'indépendance de la Guadeloupe. Les émeutes de mai 1967 et le procès de 1968 précipitent sa dissolution de fait."
points={[
'Contexte : la Guadeloupe, département français depuis 1946, sous économie de plantation.',
'Fondation dans la clandestinité après la dissolution du Front antillo-guyanais.',
'Installation légale en Guadeloupe le 30 mai 1964, sur la stèle de Delgrès.',
'Décapité par la répression de 1967-1968.'
]}
/>
</div>
<!-- CONTEXTE -->
<section class="section--tight">
<SectionTitle title="Le contexte : une colonie qui ne dit pas son nom" as="h2" id="contexte" />
<div class="lecture prose">
<h3>La Guadeloupe avant le GONG</h3>
<p><strong>Statut.</strong> {ctx.guadeloupeAvantGONG.statut}</p>
<p><strong>Économie.</strong> {ctx.guadeloupeAvantGONG.economie}</p>
<p><strong>Société.</strong> {ctx.guadeloupeAvantGONG.social}</p>
<p><strong>Politique.</strong> {ctx.guadeloupeAvantGONG.politique}</p>
<h3>Un monde en décolonisation</h3>
<p>
La fondation du GONG s'inscrit dans un contexte international bouillonnant :
l'indépendance de l'Algérie (1962), la révolution cubaine (1959), la Conférence
tricontinentale de La Havane (1966) et la mobilisation contre la guerre du Vietnam.
</p>
<ul>
<li><strong>Décolonisation :</strong> {ctx.contexteInternational.decolonisation}</li>
<li><strong>Guerre froide :</strong> {ctx.contexteInternational.guerreFroide}</li>
<li><strong>Révolution cubaine :</strong> {ctx.contexteInternational.revolutionCubaine}</li>
<li><strong>Tricontinentale :</strong> {ctx.contexteInternational.tricontinentale}</li>
<li><strong>Guerre du Vietnam :</strong> {ctx.contexteInternational.guerreVietnam}</li>
</ul>
<h3>Les précurseurs</h3>
<figure class="illus">
<img
src="/images/delgres-vivre-libres.webp"
alt="Reproduction de la proclamation de Louis Delgrès « À l'univers entier, le dernier cri de l'innocence et du désespoir » (Basse-Terre, 1802)."
width="560"
height="603"
loading="lazy"
decoding="async"
/>
<figcaption>
Proclamation de Louis Delgrès (1766-1802), « À l'univers entier, le dernier cri de
l'innocence et du désespoir » (1802) — figure tutélaire du GONG.
<span class="credit">Source : Ambre Troizat, <a href="https://commons.wikimedia.org/wiki/File:Delgres_Monnereau_Vivre_libres_ou_mourir.png" rel="external noopener noreferrer" target="_blank">Wikimedia Commons</a>, CC BY-SA 3.0.</span>
</figcaption>
</figure>
<ul>
{#each ctx.precurseurs as p (p)}
<li>{p}</li>
{/each}
</ul>
</div>
</section>
<!-- FONDATION -->
<section class="section--tight">
<SectionTitle title="La fondation" as="h2" id="fondation" />
<div class="lecture prose">
<p>{presentation.contexteFondation}</p>
<p>{presentation.installationGuadeloupe}</p>
<p>
<strong>Soutiens internationaux.</strong>
Le mouvement bénéficie de l'appui du FLN algérien, du Parti communiste belge prochinois de
Jacques Grippa (qui imprime son journal), de la Tricontinentale et de l'OLAS.
</p>
</div>
</section>
<!-- CHRONOLOGIE -->
<section class="section--tight">
<SectionTitle title="Chronologie" as="h2" id="chronologie" />
<p class="lecture muted">De la départementalisation (1946) à la reconnaissance mémorielle (2016-2021).</p>
<Timeline evenements={chronologie} />
</section>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/me-67/">Mé 67 →</a>
<a class="btn btn--ghost" href="/proces-1968/">Le procès de 1968 →</a>
<a class="btn btn--ghost" href="/militants/">Les militants →</a>
</nav>
</div>
</main>
<style>
.muted {
color: var(--muted);
}
.illus {
margin: var(--space-3) 0;
max-width: 340px;
}
.illus img {
width: 100%;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--noir-profond);
}
.illus figcaption {
margin-top: 0.5rem;
font-size: 0.82rem;
color: var(--muted);
line-height: 1.4;
}
.illus .credit {
display: block;
color: var(--muted-fort);
font-size: 0.76rem;
margin-top: 0.2rem;
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
</style>
+184
View File
@@ -0,0 +1,184 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
import { ideologie as id } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Idéologie', path: '/ideologie/' }
];
</script>
<Seo
title="L'idéologie du GONG"
description="Marxisme-léninisme d'inspiration maoïste, tiers-mondisme et anticolonialisme : les influences (Fanon, Guevara, Nkrumah, Mao…), les objectifs et l'évolution des mots d'ordre du GONG de 1960 à 1967."
path="/ideologie/"
type="article"
graph={[webPage('/ideologie/', 'Idéologie du GONG', 'Marxisme-léninisme, tiers-mondisme et lutte de libération nationale.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Idéologie</h1>
<div class="lecture">
<Resume
lead="Le GONG se réclamait du marxisme-léninisme d'inspiration maoïste, du tiers-mondisme et de l'anticolonialisme. Il voulait conduire la Guadeloupe à l'indépendance nationale puis à une révolution socialiste."
points={[
'Courant : marxisme-léninisme (tendance maoïste), tiers-mondisme.',
'Influences : Marx, Lénine, Fanon, Guevara, Nkrumah, Castro, Mao.',
'Objectif central : lindépendance nationale de la Guadeloupe.',
'Mot dordre de 1967 : « Briser les urnes colonialistes ».'
]}
/>
</div>
<section class="section--tight">
<SectionTitle title="Un courant révolutionnaire" as="h2" id="courant" />
<div class="lecture prose">
<p><strong>{id.courantPrincipal}.</strong></p>
<p>{id.autoDefinition}</p>
<p>{id.programmeExtrait}</p>
</div>
</section>
<section class="section--tight">
<SectionTitle title="Les influences" as="h2" id="influences" />
<ul class="influences">
{#each id.influences as inf, i (inf.penseur)}
<li class="card" use:reveal={i}>
<h3>{inf.penseur}</h3>
<p>{inf.apport}</p>
</li>
{/each}
</ul>
</section>
<section class="section--tight">
<SectionTitle title="Les objectifs" as="h2" id="objectifs" />
<ol class="objectifs lecture">
{#each id.objectifs as o (o)}
<li>{o}</li>
{/each}
</ol>
</section>
<section class="section--tight">
<SectionTitle title="L'évolution des mots d'ordre (1960-1967)" as="h2" id="mots-ordre" />
<p class="lecture muted">
En sept ans, le mot d'ordre passe de l'autonomie à l'indépendance, puis à l'appel
révolutionnaire de 1967.
</p>
<ol class="evolution">
{#each id.evolutionMotsOrdre as e, i (e.periode)}
<li class="evo" use:reveal={i}>
<span class="evo__periode">{e.periode}</span>
<span class="evo__mot">« {e.motOrdre} »</span>
<span class="evo__ctx">{e.contexte}</span>
</li>
{/each}
</ol>
</section>
<p class="src lecture">Sources : {id.source}.</p>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/charte/">La charte de 1963 →</a>
<a class="btn btn--ghost" href="/orientation/">Orientation & stratégie →</a>
<a class="btn btn--ghost" href="/publications/">Les publications →</a>
</nav>
</div>
</main>
<style>
.influences {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: var(--space-2);
}
.influences h3 {
font-size: 1.05rem;
text-transform: none;
margin: 0 0 0.3rem;
}
.influences p {
color: var(--muted);
margin: 0;
font-size: 0.95rem;
}
.objectifs {
max-width: var(--container-lecture);
display: grid;
gap: 0.5rem;
padding-left: 1.2rem;
}
.objectifs li {
color: var(--creme);
}
.evolution {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--space-2);
}
.evo {
display: grid;
grid-template-columns: 140px 1fr;
gap: 0.4rem var(--space-2);
background: var(--card-bg);
border: 1px solid var(--line);
border-left: 4px solid var(--accent);
border-radius: var(--radius-md);
padding: var(--space-2) var(--space-3);
}
.evo__periode {
font-family: var(--font-display);
font-weight: 800;
color: var(--accent);
grid-row: span 2;
}
.evo__mot {
font-weight: 700;
color: var(--creme);
}
.evo__ctx {
grid-column: 2;
color: var(--muted);
font-size: 0.92rem;
}
.muted {
color: var(--muted);
}
.src {
color: var(--muted-fort);
font-size: 0.85rem;
margin-top: var(--space-3);
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
@media (max-width: 560px) {
.evo {
grid-template-columns: 1fr;
}
.evo__periode {
grid-row: auto;
}
.evo__ctx {
grid-column: 1;
}
}
</style>
+208
View File
@@ -0,0 +1,208 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import { webPage } from '$lib/seo';
import { SITE, evenementsMai1967 as m } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Mé 67', path: '/me-67/' }
];
const eventNode = {
'@type': 'Event',
'@id': `${SITE.url}/me-67/#event`,
name: 'Émeutes de mai 1967 en Guadeloupe (Mé 67)',
description:
"Répression sanglante d'une grève ouvrière à Pointe-à-Pitre les 26-28 mai 1967. Bilan estimé par les historiens : 80 à 200 victimes.",
startDate: '1967-05-26',
endDate: '1967-05-28',
eventStatus: 'https://schema.org/EventScheduled',
location: {
'@type': 'Place',
name: 'Pointe-à-Pitre, Guadeloupe',
address: { '@type': 'PostalAddress', addressLocality: 'Pointe-à-Pitre', addressRegion: 'Guadeloupe', addressCountry: 'FR' }
},
about: { '@id': `${SITE.url}/#organization` }
};
</script>
<Seo
title="Mé 67 — les émeutes de mai 1967 en Guadeloupe"
description="Les 26-28 mai 1967, la répression d'une grève ouvrière à Pointe-à-Pitre fait de 8 (bilan officiel) à 200 morts (estimations des historiens). Récit, bilan et rôle du GONG."
path="/me-67/"
type="article"
graph={[webPage('/me-67/', 'Mé 67 — émeutes de mai 1967', 'Récit et bilan des tueries de mai 1967 à Pointe-à-Pitre.'), eventNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<p class="surtitre"><span class="flag-chip" aria-hidden="true"></span> 26 — 28 mai 1967 · Pointe-à-Pitre</p>
<h1>Mé 67</h1>
<div class="lecture">
<Resume
lead="« Mé 67 » désigne la répression sanglante des 26, 27 et 28 mai 1967 à Pointe-à-Pitre, en Guadeloupe. Partie d'une grève des ouvriers du bâtiment, elle a fait, selon les historiens, entre 80 et 200 victimes — un massacre colonial longtemps occulté."
points={[
'Déclencheur : une grève pour +2,5 % de salaire, sur fond dagression raciste.',
'Le 26 mai, les forces de lordre tirent à balles réelles.',
'Jacques Nestor, militant du GONG (26 ans), est la première victime.',
'Bilan officiel : 7-8 morts. Estimations des historiens : 80 à 200 victimes.'
]}
/>
</div>
<!-- CONTEXTE -->
<section class="section--tight">
<SectionTitle title="Comment tout a commencé" as="h2" id="contexte" />
<div class="lecture prose">
<p><strong>Le contexte social.</strong> {m.contexte.social}</p>
<p><strong>L'étincelle raciste.</strong> {m.contexte.racial}</p>
<p><strong>Le contexte politique.</strong> {m.contexte.politique}</p>
<p><strong>L'arrière-plan international.</strong> {m.contexte.international}</p>
</div>
</section>
<!-- DÉROULEMENT -->
<section class="section--tight">
<SectionTitle title="Trois jours de répression" as="h2" id="deroulement" />
<ol class="jours">
{#each Object.entries(m.deroulement) as [jour, recit] (jour)}
<li class="jour">
<p class="jour__date">{jour}</p>
<p class="jour__txt">{recit}</p>
</li>
{/each}
</ol>
</section>
<!-- BILAN -->
<section class="section--tight">
<SectionTitle title="Le bilan" as="h2" id="bilan" />
<div class="bilan">
<div class="bilan__stat"><span class="bilan__num">78</span><span>morts (bilan officiel)</span></div>
<div class="bilan__stat is-strong"><span class="bilan__num">80200</span><span>victimes (estimations des historiens)</span></div>
<div class="bilan__stat"><span class="bilan__num">30+</span><span>blessés</span></div>
</div>
<p class="lecture prose note">{m.bilan.note}</p>
</section>
<!-- RÔLE DU GONG -->
<section class="section--tight">
<SectionTitle title="Quel a été le rôle du GONG ?" as="h2" id="role-gong" />
<div class="lecture prose">
<p>
Le GONG a soutenu les revendications ouvrières et participé à la mobilisation. Mais
l'enquête a établi que les émeutes étaient <strong>spontanées</strong>.
</p>
<ul>
{#each m.roleDuGONG.actions as a (a)}
<li>{a}</li>
{/each}
</ul>
<p><strong>La controverse.</strong> {m.roleDuGONG.controverse}</p>
<blockquote>
{m.roleDuGONG.rapportsPolice}
<footer>— Commissaire divisionnaire Honoré Gévaudan, rapport de 1967</footer>
</blockquote>
<p><strong>Une élimination préméditée ?</strong> {m.roleDuGONG.analyse}</p>
</div>
</section>
<p class="src lecture">Sources : {m.source}.</p>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/proces-1968/">Le procès de 1968 →</a>
<a class="btn btn--ghost" href="/militants/jacques-nestor/">Jacques Nestor →</a>
</nav>
</div>
</main>
<style>
.surtitre {
display: inline-flex;
flex-direction: column;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 0.85rem;
color: var(--muted);
}
.jours {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--space-2);
}
.jour {
background: var(--card-bg);
border: 1px solid var(--line);
border-left: 4px solid var(--accent);
border-radius: var(--radius-md);
padding: var(--space-3);
}
.jour__date {
font-family: var(--font-display);
text-transform: uppercase;
font-weight: 800;
color: var(--accent);
margin: 0 0 0.3rem;
}
.jour__txt {
margin: 0;
color: var(--muted);
}
.bilan {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: var(--space-2);
margin-bottom: var(--space-3);
}
.bilan__stat {
background: var(--card-bg);
border: 1px solid var(--line);
border-radius: var(--radius-md);
padding: var(--space-3);
display: flex;
flex-direction: column;
gap: 0.3rem;
color: var(--muted);
}
.bilan__stat.is-strong {
border-color: var(--accent);
border-width: 2px;
}
.bilan__num {
font-family: var(--font-display);
font-weight: 900;
font-size: 2rem;
color: var(--creme);
line-height: 1;
}
.note {
font-style: italic;
color: var(--muted);
}
.src {
color: var(--muted-fort);
font-size: 0.85rem;
margin-top: var(--space-3);
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
blockquote footer {
margin-top: 0.4rem;
font-size: 0.85rem;
color: var(--muted-fort);
}
</style>
@@ -0,0 +1,5 @@
import { getDocument } from '$lib/server/documents';
export function load() {
return { html: getDocument('mentions-legales') };
}
+47
View File
@@ -0,0 +1,47 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import { SITE } from '$lib/data/gong';
import { webPage } from '$lib/seo';
let { data } = $props();
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Mentions légales', path: '/mentions-legales/' }
];
const aboutNode = {
'@type': 'AboutPage',
'@id': `${SITE.url}/mentions-legales/#aboutpage`,
url: `${SITE.url}/mentions-legales/`,
name: 'Mentions légales — GONG',
isPartOf: { '@id': `${SITE.url}/#website` },
about: { '@id': `${SITE.url}/#organization` },
inLanguage: 'fr-FR'
};
</script>
<Seo
title="Mentions légales"
description="Mentions légales du site gong.gp : éditeur (Organisation Ka Internationale), hébergeur, propriété intellectuelle (licence AGPL-3.0), gestion des données personnelles et droit applicable."
path="/mentions-legales/"
graph={[webPage('/mentions-legales/', 'Mentions légales — GONG', 'Mentions légales du site.'), aboutNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Mentions légales</h1>
<!-- Contenu first-party (rendu markdown côté serveur). -->
<div class="prose doc">{@html data.html}</div>
</div>
</main>
<style>
.doc :global(h2) {
margin-top: var(--space-4);
font-size: 1.25rem;
}
</style>
+93
View File
@@ -0,0 +1,93 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import Icon from '$lib/components/Icon.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
import { membres } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Militants', path: '/militants/' }
];
</script>
<Seo
title="Les militants et fondateurs du GONG"
description="Pierre Sainton, Jacques Nestor, Marcel Manville, Henri Bangou, Serge Glaude… Portraits des femmes et des hommes qui ont fait le Groupe d'Organisation Nationale de la Guadeloupe."
path="/militants/"
graph={[webPage('/militants/', 'Militants et fondateurs du GONG', 'Portraits des militants du GONG.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Militants & fondateurs</h1>
<div class="lecture">
<Resume
lead="Le GONG a été porté par quelques dizaines de militants — étudiants, ouvriers, médecins, avocats. Voici les figures documentées : ses fondateurs, ses théoriciens, ses martyrs."
points={[
'Pierre Sainton : fondateur principal et idéologue.',
'Jacques Nestor : leader de masse, première victime de Mé 67.',
'Serge Glaude : co-fondateur, auteur de « Le GONG c quoi ? ».',
'Abert Béville : précurseur, mort avant la fondation.'
]}
/>
</div>
<ul class="grille">
{#each membres as m, i (m.slug)}
<li>
<a class="card card--link" href="/militants/{m.slug}/" use:reveal={i}>
<Icon name="users" size="1.5rem" />
<h2 class="nom">{m.nom}</h2>
<p class="role">{m.role}</p>
<p class="prof">{m.profession}</p>
<span class="more">Voir la fiche <Icon name="arrow-right" size="1em" /></span>
</a>
</li>
{/each}
</ul>
</div>
</main>
<style>
.grille {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
gap: var(--space-3);
}
.nom {
font-size: 1.2rem;
margin: 0.6rem 0 0.2rem;
text-transform: none;
}
.role {
color: var(--accent);
font-weight: 600;
font-size: 0.9rem;
margin: 0 0 0.2rem;
}
.prof {
color: var(--muted);
font-size: 0.9rem;
margin: 0;
}
.more {
margin-top: 0.8rem;
display: inline-flex;
align-items: center;
gap: 0.35rem;
font-family: var(--font-display);
text-transform: uppercase;
font-size: 0.75rem;
letter-spacing: 0.05em;
color: var(--accent);
}
</style>
+110
View File
@@ -0,0 +1,110 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { personNode } from '$lib/seo';
let { data } = $props();
const m = $derived(data.membre);
const crumbs = $derived([
{ name: 'Accueil', path: '/' },
{ name: 'Militants', path: '/militants/' },
{ name: m.nom, path: `/militants/${m.slug}/` }
]);
const graph = $derived([
personNode(`/militants/${m.slug}/`, m.nom, `${m.role} — ${m.profession}. ${m.biographie}`, {
jobTitle: m.profession,
...(m.dateDeces ? { deathDate: m.dateDeces } : {})
})
]);
</script>
<Seo
title={m.nom}
description={`${m.nom}${m.role}. ${m.biographie.slice(0, 155)}`}
path={`/militants/${m.slug}/`}
type="profile"
graph={graph}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<article class="fiche">
<header class="fiche__head">
<Icon name="users" size="2.4rem" />
<div>
<h1>{m.nom}</h1>
<p class="fiche__role">{m.role}</p>
<p class="fiche__prof">{m.profession}</p>
</div>
</header>
<div class="lecture prose">
<h2 class="sr-only">Biographie</h2>
<p>{m.biographie}</p>
{#if m.citation}
<blockquote>{m.citation}</blockquote>
{/if}
{#if m.citations}
{#each m.citations as c (c)}
<blockquote>{c}</blockquote>
{/each}
{/if}
{#if m.dateDeces || m.lieuDeces || m.circonstances}
<h2>Circonstances</h2>
{#if m.dateDeces}<p><strong>Date :</strong> {m.dateDeces}</p>{/if}
{#if m.lieuDeces}<p><strong>Lieu :</strong> {m.lieuDeces}</p>{/if}
{#if m.circonstances}<p>{m.circonstances}</p>{/if}
{/if}
{#if m.oeuvre}
<h2>Œuvre</h2>
<p class="tag"><Icon name="book" size="1em" /> {m.oeuvre}</p>
{/if}
</div>
<footer class="fiche__src">Sources : {m.source}.</footer>
</article>
<p><a class="btn btn--ghost" href="/militants/">← Tous les militants</a></p>
</div>
</main>
<style>
.fiche__head {
display: flex;
gap: var(--space-2);
align-items: flex-start;
padding-bottom: var(--space-3);
border-bottom: 1px solid var(--line);
margin-bottom: var(--space-3);
}
.fiche__head h1 {
margin: 0;
text-transform: none;
}
.fiche__role {
color: var(--accent);
font-weight: 600;
margin: 0.3rem 0 0.2rem;
}
.fiche__prof {
color: var(--muted);
margin: 0;
}
.fiche__src {
margin-top: var(--space-3);
color: var(--muted-fort);
font-size: 0.85rem;
}
.prose .tag {
display: inline-flex;
}
</style>
+11
View File
@@ -0,0 +1,11 @@
import { error } from '@sveltejs/kit';
import { membres, getMembre } from '$lib/data/gong';
import type { EntryGenerator } from './$types';
export const entries: EntryGenerator = () => membres.map((m) => ({ slug: m.slug }));
export function load({ params }) {
const membre = getMembre(params.slug);
if (!membre) error(404, 'Militant introuvable');
return { membre };
}
+13
View File
@@ -0,0 +1,13 @@
<script lang="ts">
import Icon from '$lib/components/Icon.svelte';
</script>
<main id="contenu" class="container section" style="text-align:center; min-height:70dvh; display:grid; place-content:center; gap:1rem;">
<Icon name="ka" size="4rem" />
<h1>Pa ni koneksyon</h1>
<p class="prose" style="margin-inline:auto;">
<span lang="gcf">Ou dékoné.</span> Vous êtes hors-ligne. Les pages déjà consultées restent
disponibles ; reconnectez-vous pour lire le reste du site du GONG.
</p>
<p><a class="btn" href="/">Rèvin an akèy — Retour à l'accueil</a></p>
</main>
+5
View File
@@ -0,0 +1,5 @@
import { getDocument } from '$lib/server/documents';
export function load() {
return { html: getDocument('orientation-strategie') };
}
+86
View File
@@ -0,0 +1,86 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { webPage } from '$lib/seo';
let { data } = $props();
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Orientation & stratégie', path: '/orientation/' }
];
</script>
<Seo
title="Orientation et stratégie de la lutte révolutionnaire"
description="Le rapport d'orientation et de stratégie du GONG (1963) : lutte de masse et lutte de classe, suffrage universel, violence libératrice, voie révolutionnaire de la Guadeloupe. Texte intégral."
path="/orientation/"
type="article"
graph={[webPage('/orientation/', 'Orientation et stratégie du GONG', 'Rapport stratégique du GONG (1963).')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<header class="doc-head">
<p class="doc-kicker"><span class="flag-chip" aria-hidden="true"></span> Document stratégique · 1963</p>
<h1>Orientation & stratégie de la lutte révolutionnaire du peuple guadeloupéen</h1>
<a class="btn btn--ghost" href="/assets/orientation-et-strategie-de-la-lutte-revolutionnaire-du-peuple-guadeloupeen-1963.pdf" rel="external noopener noreferrer" target="_blank">
Voir l'original (PDF) <Icon name="download" size="1em" />
</a>
</header>
<article class="prose doc">
<!-- Contenu first-party (transcription du document de 1963, rendu markdown côté serveur). -->
{@html data.html}
</article>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/charte/">La charte de 1963 →</a>
<a class="btn btn--ghost" href="/histoire/">L'histoire du GONG →</a>
</nav>
</div>
</main>
<style>
.doc-head {
margin-bottom: var(--space-4);
}
.doc-head h1 {
font-size: clamp(1.6rem, 1.2rem + 2vw, 2.6rem);
}
.doc-kicker {
display: inline-flex;
flex-direction: column;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 0.85rem;
color: var(--muted);
}
.doc-head .btn {
margin-top: var(--space-2);
}
.doc :global(h2) {
margin-top: var(--space-4);
padding-top: var(--space-2);
border-top: 1px solid var(--line);
font-size: 1.35rem;
}
.doc :global(h3) {
color: var(--accent);
font-size: 1.1rem;
}
.doc :global(blockquote) {
font-size: 1.05rem;
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
</style>
+177
View File
@@ -0,0 +1,177 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import SectionTitle from '$lib/components/SectionTitle.svelte';
import { webPage } from '$lib/seo';
import { SITE, proces1968 as p, accusesProces1968 as acc } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Procès de 1968', path: '/proces-1968/' }
];
const eventNode = {
'@type': 'Event',
'@id': `${SITE.url}/proces-1968/#event`,
name: 'Procès des 18 Guadeloupéens',
description: p.accusation,
startDate: '1968-02-19',
endDate: '1968-03-01',
eventStatus: 'https://schema.org/EventScheduled',
location: { '@type': 'Place', name: "Cour de sûreté de l'État, Paris", address: { '@type': 'PostalAddress', addressLocality: 'Paris', addressCountry: 'FR' } },
about: { '@id': `${SITE.url}/#organization` }
};
</script>
<Seo
title="Le procès des 18 Guadeloupéens (1968)"
description="Du 19 février au 1er mars 1968, 18 membres du GONG sont jugés à Paris pour « atteinte à l'intégrité du territoire ». Sartre et Césaire témoignent. Verdict : 13 acquittés, 6 condamnés avec sursis."
path="/proces-1968/"
type="article"
graph={[webPage('/proces-1968/', 'Procès des 18 Guadeloupéens (1968)', 'Le procès du GONG devant la Cour de sûreté de l’État.'), eventNode]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<p class="surtitre"><span class="flag-chip" aria-hidden="true"></span> 19 février — 1er mars 1968 · Paris</p>
<h1>Le procès des 18</h1>
<div class="lecture">
<Resume
lead="Du 19 février au 1er mars 1968, dix-huit Guadeloupéens, dont les dirigeants du GONG, sont jugés à Paris devant la Cour de sûreté de l'État pour « atteinte à l'intégrité du territoire français ». Jean-Paul Sartre et Aimé Césaire témoignent en leur faveur. Le verdict — 13 acquittements, 6 peines avec sursis — est vécu comme une victoire politique."
points={[
'Juridiction dexception : la Cour de sûreté de l’État (créée en 1963 pour lOAS).',
'Accusation : atteinte à lintégrité du territoire, complot contre l’État.',
'Témoins de la défense : Jean-Paul Sartre, Aimé Césaire, la LDH.',
'Verdict : 13 acquittés, 6 condamnés avec sursis (dont Pierre Sainton).'
]}
/>
</div>
<section class="section--tight">
<SectionTitle title="Un tribunal d'exception" as="h2" id="juridiction" />
<div class="lecture prose">
<p><strong>{p.juridiction}.</strong> {p.noteJuridiction}</p>
<p><strong>L'accusation :</strong> {p.accusation}.</p>
</div>
</section>
<section class="section--tight">
<SectionTitle title="Les accusés" as="h2" id="accuses" />
<p class="lecture muted">{acc.description}. Noms identifiés dans les sources :</p>
<ul class="chips lecture">
{#each acc.nomsIdentifies as nom (nom)}
<li class="tag">{nom}</li>
{/each}
</ul>
<p class="lecture note">{acc.note}</p>
</section>
<section class="section--tight">
<SectionTitle title="Sartre et Césaire à la barre" as="h2" id="temoins" />
<div class="lecture prose">
<p>La défense fait citer des figures majeures de la pensée anticolonialiste :</p>
<ul>
{#each p.temoinsDefense as t (t)}
<li>{t}</li>
{/each}
</ul>
<p><strong>Avocats :</strong> {p.avocats.join(', ')}.</p>
</div>
</section>
<section class="section--tight">
<SectionTitle title="Le verdict" as="h2" id="verdict" />
<div class="verdict">
<div class="verdict__stat is-ok"><span class="verdict__num">{p.verdict.acquittes}</span><span>acquittés</span></div>
<div class="verdict__stat"><span class="verdict__num">{p.verdict.condamnes}</span><span>condamnés avec sursis</span></div>
</div>
<p class="lecture prose">{p.verdict.interpretation}</p>
</section>
<section class="section--tight">
<SectionTitle title="Ce que le procès a révélé" as="h2" id="elements-cles" />
<ul class="lecture prose">
{#each p.elementsCles as e (e)}
<li>{e}</li>
{/each}
</ul>
</section>
<p class="src lecture">Sources : {p.source}.</p>
<nav class="suite" aria-label="Poursuivre la lecture">
<a class="btn btn--ghost" href="/heritage/">L'héritage du GONG →</a>
<a class="btn btn--ghost" href="/militants/pierre-sainton/">Pierre Sainton →</a>
</nav>
</div>
</main>
<style>
.surtitre {
display: inline-flex;
flex-direction: column;
gap: 0.5rem;
font-family: var(--font-display);
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 0.85rem;
color: var(--muted);
}
.chips {
list-style: none;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
margin: 0 0 var(--space-2);
}
.muted {
color: var(--muted);
}
.note {
font-style: italic;
color: var(--muted-fort);
font-size: 0.9rem;
}
.verdict {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: var(--space-2);
margin-bottom: var(--space-3);
}
.verdict__stat {
background: var(--card-bg);
border: 1px solid var(--line);
border-radius: var(--radius-md);
padding: var(--space-3);
display: flex;
flex-direction: column;
gap: 0.3rem;
color: var(--muted);
}
.verdict__stat.is-ok {
border-left: 4px solid var(--vert-gong);
}
.verdict__num {
font-family: var(--font-display);
font-weight: 900;
font-size: 2.2rem;
color: var(--creme);
line-height: 1;
}
.src {
color: var(--muted-fort);
font-size: 0.85rem;
margin-top: var(--space-3);
}
.suite {
display: flex;
gap: 0.6rem;
flex-wrap: wrap;
margin-top: var(--space-4);
}
</style>
+120
View File
@@ -0,0 +1,120 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Resume from '$lib/components/Resume.svelte';
import Icon from '$lib/components/Icon.svelte';
import { reveal } from '$lib/motion/reveal';
import { webPage } from '$lib/seo';
import { publications as pubs } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Publications', path: '/publications/' }
];
</script>
<Seo
title="Les publications du GONG"
description="Gong-Information (« Journal du Patriote Guadeloupéen »), Révolution Caraïbe, tracts clandestins et affiches électorales de 1967 : les organes de propagande et de théorie du GONG."
path="/publications/"
type="article"
graph={[webPage('/publications/', 'Publications du GONG', 'Journaux, tracts et affiches du GONG.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Publications</h1>
<div class="lecture">
<Resume
lead="Le GONG diffusait ses idées par un journal clandestin, Gong-Information, imprimé en Belgique avec l'appui du Parti communiste belge prochinois, ainsi que par des tracts et des affiches électorales — dont les célèbres « Briser les urnes colonialistes » de 1967."
points={[
'Gong-Information : organe politique et théorique (1964-1967).',
'Imprimé en Belgique, diffusé clandestinement en France et en Guadeloupe.',
'Affiches de 1967 saisies par la police sur le port de Pointe-à-Pitre.'
]}
/>
</div>
<p class="lecture cta-archives">
<Icon name="book" size="1.2rem" /> Les numéros de <strong>Gong-Information</strong> ont été numérisés :
<a href="/archives/">consulter les archives</a> (transcription + scan PDF).
</p>
<ul class="pubs">
{#each pubs as p, i (p.titre)}
<li class="card" use:reveal={i}>
<Icon name="book" size="1.6rem" />
<h2>{p.titre}</h2>
{#if p.sousTitre}<p class="sous">« {p.sousTitre} »</p>{/if}
<p class="meta"><span class="tag">{p.type}</span> <span class="tag tag--vert">{p.periode}</span></p>
<p class="contenu">{p.contenu}</p>
{#if p.lieuImpression}<p class="detail"><strong>Impression :</strong> {p.lieuImpression}</p>{/if}
{#if p.lieuDiffusion}<p class="detail"><strong>Diffusion :</strong> {p.lieuDiffusion}</p>{/if}
{#if p.extraitProgramme}<blockquote>{p.extraitProgramme}</blockquote>{/if}
{#if p.note}<p class="note">{p.note}</p>{/if}
<p class="src">Source : {p.source}.</p>
</li>
{/each}
</ul>
</div>
</main>
<style>
.cta-archives {
display: flex;
align-items: center;
gap: 0.5rem;
flex-wrap: wrap;
background: color-mix(in srgb, var(--accent) 8%, transparent);
border: 1px solid color-mix(in srgb, var(--accent) 35%, transparent);
border-radius: var(--radius-md);
padding: var(--space-2) var(--space-3);
margin-bottom: var(--space-4);
}
.pubs {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--space-3);
max-width: var(--container-lecture);
}
.pubs h2 {
font-size: 1.3rem;
margin: 0.5rem 0 0.2rem;
text-transform: none;
}
.sous {
color: var(--accent);
font-style: italic;
margin: 0 0 0.5rem;
}
.meta {
display: flex;
gap: 0.5rem;
flex-wrap: wrap;
margin: 0 0 0.6rem;
}
.contenu {
color: var(--creme);
margin: 0 0 0.6rem;
}
.detail {
color: var(--muted);
font-size: 0.92rem;
margin: 0 0 0.3rem;
}
.note {
color: var(--muted);
font-style: italic;
font-size: 0.92rem;
}
.src {
color: var(--muted-fort);
font-size: 0.82rem;
margin: 0.5rem 0 0;
}
</style>
+53
View File
@@ -0,0 +1,53 @@
import { SITE, membres } from '$lib/data/gong';
import { getActualites } from '$lib/server/actualites';
import { getArchives } from '$lib/server/archives';
export const prerender = true;
const statiques: { path: string; priority: string; changefreq: string }[] = [
{ path: '/', priority: '1.0', changefreq: 'monthly' },
{ path: '/histoire/', priority: '0.9', changefreq: 'yearly' },
{ path: '/me-67/', priority: '0.9', changefreq: 'yearly' },
{ path: '/proces-1968/', priority: '0.8', changefreq: 'yearly' },
{ path: '/militants/', priority: '0.8', changefreq: 'yearly' },
{ path: '/ideologie/', priority: '0.7', changefreq: 'yearly' },
{ path: '/heritage/', priority: '0.7', changefreq: 'yearly' },
{ path: '/publications/', priority: '0.6', changefreq: 'yearly' },
{ path: '/archives/', priority: '0.8', changefreq: 'yearly' },
{ path: '/charte/', priority: '0.7', changefreq: 'yearly' },
{ path: '/orientation/', priority: '0.7', changefreq: 'yearly' },
{ path: '/sources/', priority: '0.6', changefreq: 'yearly' },
{ path: '/faq/', priority: '0.8', changefreq: 'monthly' },
{ path: '/actualites/', priority: '0.6', changefreq: 'weekly' },
{ path: '/contact/', priority: '0.4', changefreq: 'yearly' },
{ path: '/mentions-legales/', priority: '0.2', changefreq: 'yearly' }
];
export function GET() {
const today = new Date().toISOString().slice(0, 10);
const urls: string[] = [];
for (const s of statiques) {
urls.push(
`<url><loc>${SITE.url}${s.path}</loc><lastmod>${today}</lastmod><changefreq>${s.changefreq}</changefreq><priority>${s.priority}</priority></url>`
);
}
for (const m of membres) {
urls.push(`<url><loc>${SITE.url}/militants/${m.slug}/</loc><lastmod>${today}</lastmod><changefreq>yearly</changefreq><priority>0.6</priority></url>`);
}
for (const a of getActualites()) {
urls.push(`<url><loc>${SITE.url}/actualites/${a.slug}/</loc><lastmod>${a.iso}</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url>`);
}
for (const a of getArchives()) {
urls.push(`<url><loc>${SITE.url}/archives/${a.slug}/</loc><lastmod>${a.iso}</lastmod><changefreq>yearly</changefreq><priority>0.6</priority></url>`);
}
const xml = `<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
${urls.join('\n')}
</urlset>`;
return new Response(xml, {
headers: { 'Content-Type': 'application/xml', 'Cache-Control': 'max-age=3600' }
});
}
+127
View File
@@ -0,0 +1,127 @@
<script lang="ts">
import Seo from '$lib/components/Seo.svelte';
import Breadcrumb from '$lib/components/Breadcrumb.svelte';
import Icon from '$lib/components/Icon.svelte';
import { webPage } from '$lib/seo';
import { sources, metadata } from '$lib/data/gong';
const crumbs = [
{ name: 'Accueil', path: '/' },
{ name: 'Sources', path: '/sources/' }
];
</script>
<Seo
title="Sources & bibliographie"
description="Les 15 sources académiques, journalistiques et archivistiques du dossier documentaire sur le GONG : Sylvain Mary, Contretemps, LDH, Lutte Ouvrière, Archives nationales, Wikipédia, etc."
path="/sources/"
graph={[webPage('/sources/', 'Sources et bibliographie', 'Sources du dossier documentaire sur le GONG.')]}
breadcrumb={crumbs}
/>
<main id="contenu" class="section">
<div class="container">
<Breadcrumb items={crumbs} />
<h1>Sources & bibliographie</h1>
<p class="lecture intro">{metadata.avertissement}</p>
<ol class="biblio">
{#each sources as s, i (s.titre)}
<li class="ref">
<Icon name="book" size="1.2rem" />
<div>
<p class="ref__titre">
{#if s.url}
<a href={s.url} rel="external noopener noreferrer" target="_blank">{s.titre}</a>
<Icon name="external" size="0.85em" />
{:else}
{s.titre}
{/if}
</p>
<p class="ref__meta">
<strong>{s.auteur}</strong> · {s.editeur}{s.annee !== 'Non daté' ? `, ${s.annee}` : ''} · <span class="ref__type">{s.type}</span>
</p>
</div>
</li>
{/each}
</ol>
<h2 class="credits-titre">Crédits iconographiques</h2>
<ul class="credits lecture">
<li>
<strong>Proclamation de Louis Delgrès</strong> (« À l'univers entier », 1802) —
Ambre Troizat, <a href="https://commons.wikimedia.org/wiki/File:Delgres_Monnereau_Vivre_libres_ou_mourir.png" rel="external noopener noreferrer" target="_blank">Wikimedia Commons</a>, licence CC BY-SA 3.0.
</li>
<li>
<strong>Drapeau de l'UPLG</strong> (proposition de drapeau national) —
<a href="https://commons.wikimedia.org/wiki/File:Flag_of_Guadeloupe_(UPLG).svg" rel="external noopener noreferrer" target="_blank">Wikimedia Commons</a>, domaine public.
</li>
<li><strong>Logo et drapeau du GONG</strong> — Organisation Ka Internationale.</li>
</ul>
<p class="lecture note">
Ce site est un travail de documentation à but non lucratif et pédagogique. Les extraits de
textes historiques sont reproduits à des fins de mémoire et de recherche, avec mention de leur
provenance.
</p>
</div>
</main>
<style>
.intro {
color: var(--muted);
margin-bottom: var(--space-4);
}
.biblio {
list-style: none;
margin: 0;
padding: 0;
display: grid;
gap: var(--space-2);
counter-reset: ref;
}
.ref {
display: flex;
gap: var(--space-2);
background: var(--card-bg);
border: 1px solid var(--line);
border-left: 4px solid var(--accent);
border-radius: var(--radius-md);
padding: var(--space-2) var(--space-3);
}
.ref__titre {
margin: 0 0 0.2rem;
font-weight: 600;
color: var(--creme);
}
.ref__titre a {
color: var(--creme);
}
.ref__titre a:hover {
color: var(--accent);
}
.ref__meta {
margin: 0;
color: var(--muted);
font-size: 0.9rem;
}
.ref__type {
font-style: italic;
}
.credits-titre {
margin-top: var(--space-5);
font-size: 1.3rem;
}
.credits {
display: grid;
gap: 0.5rem;
padding-left: 1.1rem;
color: var(--muted);
font-size: 0.92rem;
}
.note {
margin-top: var(--space-4);
color: var(--muted-fort);
font-size: 0.88rem;
}
</style>
+52
View File
@@ -0,0 +1,52 @@
# ============================================================================
# gong.gp — configuration Apache (o2switch / hébergement mutualisé statique).
# Le CSP script-src/style-src est géré par la balise <meta> hachée de SvelteKit.
# ============================================================================
# ── HTTPS forcé ──
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
# ── En-têtes de sécurité ──
<IfModule mod_headers.c>
Header always set X-Frame-Options "DENY"
Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "geolocation=(), camera=(), microphone=(), payment=(), usb=(), interest-cohort=()"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Header always set Content-Security-Policy "frame-ancestors 'none'; base-uri 'self'; form-action 'self'; object-src 'none'"
</IfModule>
# ── Cache : assets immuables ──
<IfModule mod_headers.c>
<FilesMatch "\.(woff2|avif|webp|png|jpg|jpeg|svg|ico)$">
Header set Cache-Control "public, max-age=31536000, immutable"
</FilesMatch>
</IfModule>
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType font/woff2 "access plus 1 year"
ExpiresByType image/avif "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType text/html "access plus 0 seconds"
</IfModule>
# ── Compression ──
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css application/javascript application/json image/svg+xml application/xml
</IfModule>
# ── Page 404 autonome ──
ErrorDocument 404 /404.html
# ── Types ──
<IfModule mod_mime.c>
AddType application/manifest+json .webmanifest
AddType font/woff2 .woff2
AddType image/avif .avif
</IfModule>
+81
View File
@@ -0,0 +1,81 @@
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="robots" content="noindex" />
<title>404 — GONG</title>
<link rel="icon" href="/favicon.ico" sizes="32x32" />
<link rel="stylesheet" href="/fonts/fonts.css" />
<style>
:root {
--noir: #0d0d0d;
--creme: #faf6ef;
--rouge: #e11419;
--vert: #00a651;
--muted: rgba(250, 246, 239, 0.68);
}
* {
box-sizing: border-box;
}
body {
margin: 0;
min-height: 100dvh;
display: grid;
place-content: center;
justify-items: center;
text-align: center;
gap: 0.6rem;
padding: 2rem;
background: var(--noir);
color: var(--creme);
font-family: 'Inter', system-ui, sans-serif;
}
.flag {
width: 72px;
height: 6px;
background: linear-gradient(to right, var(--vert) 0 40%, #fff 40% 60%, var(--rouge) 60% 100%);
margin-bottom: 1rem;
}
.code {
font-family: 'Archivo', 'Arial Black', sans-serif;
font-weight: 900;
font-size: clamp(3rem, 2rem + 6vw, 6rem);
line-height: 1;
color: var(--rouge);
margin: 0;
}
h1 {
font-family: 'Archivo', 'Arial Black', sans-serif;
font-weight: 800;
text-transform: uppercase;
margin: 0;
}
p {
max-width: 44ch;
color: var(--muted);
}
a.btn {
display: inline-block;
margin-top: 1rem;
font-family: 'Archivo', sans-serif;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.03em;
text-decoration: none;
padding: 0.85em 1.4em;
border: 2px solid var(--rouge);
border-radius: 3px;
background: var(--rouge);
color: #0d0d0d;
}
</style>
</head>
<body>
<div class="flag"></div>
<p class="code">404</p>
<h1 lang="gcf">Paj-la pa la</h1>
<p>Cette page n'existe pas ou a été déplacée. Mais l'histoire du GONG, elle, est toujours là.</p>
<a class="btn" href="/">Retour à l'accueil</a>
</body>
</html>
+23
View File
@@ -0,0 +1,23 @@
# En-têtes Cloudflare Pages.
# Le CSP script-src/style-src est géré par la balise <meta> hachée de SvelteKit (kit.csp).
# Ici : uniquement les directives d'en-tête (frame-ancestors…) et les en-têtes de sécurité.
/*
X-Frame-Options: DENY
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: geolocation=(), camera=(), microphone=(), payment=(), usb=(), interest-cohort=()
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Content-Security-Policy: frame-ancestors 'none'; base-uri 'self'; form-action 'self'; object-src 'none'
# Assets immuables — cache long.
/_app/immutable/*
Cache-Control: public, max-age=31536000, immutable
/fonts/*
Cache-Control: public, max-age=31536000, immutable
# L'administration (Sveltia CMS) doit joindre la forge Gitea.
/admin/*
X-Robots-Tag: noindex
Content-Security-Policy: default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https://labola.o-k-i.net; font-src 'self' data:; connect-src 'self' https://labola.o-k-i.net; frame-ancestors 'none'; base-uri 'self'
+5
View File
@@ -0,0 +1,5 @@
# CSP spécifique à l'administration (Sveltia CMS) : doit joindre la forge Gitea.
<IfModule mod_headers.c>
Header always set X-Robots-Tag "noindex, nofollow"
Header always set Content-Security-Policy "default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https://labola.o-k-i.net; font-src 'self' data:; connect-src 'self' https://labola.o-k-i.net; frame-ancestors 'none'; base-uri 'self'"
</IfModule>
+47
View File
@@ -0,0 +1,47 @@
# Sveltia CMS — administration des actualités du GONG.
# Backend git : forge Gitea/Forgejo de l'écosystème OKI (labola.o-k-i.net).
# Prérequis (une seule fois) : créer une application OAuth dans Gitea
# (Paramètres → Applications → Nouvelle application OAuth2),
# URL de redirection : https://gong.gp/admin/ — puis renseigner `app_id` ci-dessous.
# Voir DEPLOIEMENT.md.
backend:
name: gitea
repo: ORGANISATION-KA-INTERNATIONALE/gong.gp
branch: prod # ⚠️ doit correspondre à la branche déployée en production
base_url: https://labola.o-k-i.net
# app_id: "<client-id-oauth-gitea>"
# Édition locale sans authentification : `npx @sveltia/cms-cli` ou ?dev côté outillage.
# media : images des actualités auto-hébergées dans le dépôt.
media_folder: static/images/actualites
public_folder: /images/actualites
# Interface en français.
locale: fr
collections:
- name: actualites
label: Actualités
label_singular: Actualité
description: Communiqués, commémorations et annonces du GONG.
folder: content/actualites
create: true
delete: true
slug: '{{year}}-{{month}}-{{day}}-{{slug}}'
identifier_field: titre
summary: '{{titre}} — {{date}}'
sortable_fields: [date, titre]
fields:
- { name: titre, label: Titre, widget: string }
- name: date
label: Date de publication
widget: datetime
format: 'YYYY-MM-DD'
date_format: 'YYYY-MM-DD'
time_format: false
- { name: chapeau, label: Chapeau (résumé court), widget: text }
- { name: couverture, label: Image de couverture, widget: image, required: false }
- { name: couvertureAlt, label: "Texte alternatif de l'image", widget: string, required: false }
- { name: top, label: Mettre en avant, widget: boolean, default: false }
- { name: body, label: Contenu, widget: markdown }
+14
View File
@@ -0,0 +1,14 @@
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="robots" content="noindex, nofollow" />
<title>GONG — Administration</title>
<link rel="icon" href="/favicon.ico" sizes="32x32" />
</head>
<body>
<!-- Sveltia CMS — bundle auto-hébergé (souveraineté + CSP script-src 'self'). -->
<script src="/admin/sveltia-cms.js"></script>
</body>
</html>
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+69
View File
@@ -0,0 +1,69 @@
/* Polices auto-hébergées souveraineté numérique, zéro appel Google Fonts.
Archivo (display, titres + boutons) · Inter (corps). Sous-ensemble latin, woff2. */
/* ── Archivo (display) ── */
@font-face {
font-family: 'Archivo';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url('/fonts/archivo-latin-600-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Archivo';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url('/fonts/archivo-latin-700-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Archivo';
font-style: normal;
font-weight: 800;
font-display: swap;
src: url('/fonts/archivo-latin-800-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Archivo';
font-style: normal;
font-weight: 900;
font-display: swap;
src: url('/fonts/archivo-latin-900-normal.woff2') format('woff2');
}
/* ── Inter (corps) ── */
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url('/fonts/inter-latin-400-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url('/fonts/inter-latin-500-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url('/fonts/inter-latin-600-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url('/fonts/inter-latin-700-normal.woff2') format('woff2');
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 800;
font-display: swap;
src: url('/fonts/inter-latin-800-normal.woff2') format('woff2');
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More