mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-10-02 17:54:22 +10:00
docs(template): propose European chronology layout (#3475)
* docs: research Europass mapping and visual proposal * docs: remediate Europass overflow artifacts
This commit is contained in:
@@ -0,0 +1,120 @@
|
||||
# Europass research and visual proposal — Plan 33A
|
||||
|
||||
Status: **research complete; visual and naming approval pending**. No renderer, template ID, gallery entry,
|
||||
schema change, or import/export integration is included. This proposal does not resolve issue #2689.
|
||||
|
||||
## Review package
|
||||
|
||||
- [Reference comparison](artifacts/reference-comparison.svg): analytical redraw of the selected official
|
||||
reference beside the mapped proposal. The redraw excludes branding and source-specific recruitment text.
|
||||
- [One-page proposal](artifacts/one-page.svg): canonical static layout with exact synthetic field sources.
|
||||
- Overflow proposal: [page 1](artifacts/overflow-1.svg), [page 2](artifacts/overflow-2.svg),
|
||||
[page 3](artifacts/overflow-3.svg). These are one document, not three template options.
|
||||
- [Generated concept](artifacts/concept-one-page.png): supplementary visual exploration, not the field or
|
||||
geometry contract. The SVGs take precedence.
|
||||
- [Field mapping and behavior](mapping.md), [synthetic fixture records](synthetic-fixtures.json), and
|
||||
[generation provenance](artifacts/PROVENANCE.md).
|
||||
|
||||
Open SVGs directly in a browser. They contain their text and geometry, require no application server,
|
||||
and load no external images, fonts or scripts. A local sans-serif font is sufficient. The JSON contains
|
||||
two complete ResumeData objects under `onePage` and `overflow`; neither is an official Europass file.
|
||||
|
||||
## Authority and repository revalidation
|
||||
|
||||
Access/revalidation date: **2026-09-06**. Research base: `b85d285b69843612e9d7f0ab802248982e7bf0ea`.
|
||||
Planning authority: commit `a2557b2ad40e06e1e63eb655f286e6a78fe6bf0d`,
|
||||
[Plan 33](https://github.com/amruthpillai/reactive-resume/blob/a2557b2ad40e06e1e63eb655f286e6a78fe6bf0d/plans/33-europass-template.md)
|
||||
and its recorded decisions. Approval covers this research/proposal unit; concrete visual approval remains open.
|
||||
|
||||
Read-only `gh issue view 2689` confirmed the [issue](https://github.com/amruthpillai/reactive-resume/issues/2689)
|
||||
is open, last updated 2026-08-16. Its request for a built-in option is relevant; assertions about compulsory
|
||||
formats are not adopted. The linked community converter remains third-party work, not an import contract.
|
||||
|
||||
The complete open-PR list returned four PRs: [#3455](https://github.com/amruthpillai/reactive-resume/pull/3455)
|
||||
(planning), [#3456](https://github.com/amruthpillai/reactive-resume/pull/3456) (execution ledger),
|
||||
[#3467](https://github.com/amruthpillai/reactive-resume/pull/3467) (authored-page guidance), and
|
||||
[#3468](https://github.com/amruthpillai/reactive-resume/pull/3468) (stylesheet diagnostics).
|
||||
None proposed a Europass renderer. Pagination guidance is adjacent work; no shared source is changed here.
|
||||
|
||||
The schema still has 15 template IDs and no Europass ID. The plan's targeted drift check from `7a98f6662`
|
||||
found only changes to an unrelated rich-text table integration test. Current ResumeData and shared filtering
|
||||
were read directly; no `.codegraph/` directory was present. Intent inventory returned
|
||||
“No intent-enabled packages found,” so no matching local package skill was available to load.
|
||||
|
||||
## Official evidence register
|
||||
|
||||
All sources below were accessed on **2026-09-06**. Only EU/Europass first-party material informs external
|
||||
claims. Copyright attribution for summarized Europass information: **© European Union**. The independent
|
||||
synthetic examples and diagrams are adaptations for discussion, not official Europass output.
|
||||
|
||||
| ID | Source | Supported finding and limit |
|
||||
| --- | --- | --- |
|
||||
| S1 | [Create your Europass CV](https://europass.europa.eu/en/create-europass-cv) | Current guidance offers a choice of designs and selected profile content. It recommends clear, tailored descriptions and reverse chronology. Its photograph advice is guidance, not evidence of a universal required field. No single fixed layout is specified here. |
|
||||
| S2 | [Europass FAQ, page 1](https://europass.europa.eu/en/faq?page=1) | CV sections can be added, removed, moved and renamed; several templates exist. Current saving guidance specifies Europass PDF. Information reuse is allowed with source acknowledgement. This is not proof of a logo licence or compatibility of third-party PDFs with the editor. |
|
||||
| S3 | [Europass FAQ, page 2](https://europass.europa.eu/en/faq?page=2) | The profile FAQ says name and surname are mandatory and users choose other sections. Initial web extraction failed; a direct HTTPS fetch subsequently verified the live page text. This concerns the profile, not a separately tested CV-editor validation contract. |
|
||||
| S4 | [EEAS-hosted Europass CV form](https://www.eeas.europa.eu/sites/default/files/documents/2025/Europass-cv-en%20template_0.pdf) | Stable public two-page blank form, inspected as PDF and raster. It contains a legacy © European Union 2002–2018 footer and recruitment-specific text. Its 2025 URL does not make its design a current universal specification. Headings are optional in this form. This is the selected visual reference. |
|
||||
| S5 | [Europass terms of use](https://europass.europa.eu/en/node/2161) | Terms govern platform use and prohibit misleading content and intellectual-property violations. No explicit third-party template-branding permission was found in this page. |
|
||||
| S6 | [European Commission legal notice](https://commission.europa.eu/legal-notice_en) | The general policy permits reuse of covered EU-owned website content with credit and indication of changes, but excludes protected names, logos and other industrial-property material. It is not a blanket licence for every asset hosted by another EU institution. |
|
||||
|
||||
### Reference selection and current guidance
|
||||
|
||||
S4 provides an inspectable visual anchor: a narrow label/date area at reading start, wider detail area,
|
||||
blue headings and rules, employment and education entries, a language matrix, and running page metadata.
|
||||
The comparison redraw records these observations; measurements in the proposal are our design decisions.
|
||||
We do not redistribute the original PDF or its mark. Reviewers can open the first-party PDF through S4.
|
||||
|
||||
S1/S2 are the current behavioral guidance. They support flexible content and multiple layouts; they do not
|
||||
establish S4 as today's sole layout. The proposed document therefore takes the chronology structure from
|
||||
S4 while adapting it to existing data and the current guidance. No official live-editor CV was exported
|
||||
or uploaded, and no account or personal data was used.
|
||||
|
||||
An EEA search result for historic CV instructions redirected to the agency's general About page when
|
||||
opened. That result is not used as evidence. Historic XML documentation also surfaced but is not used to
|
||||
promise current export formats or interoperability. No secondary-source claims were adopted.
|
||||
|
||||
## Material visual and reuse decisions
|
||||
|
||||
Recommended working title: **European chronology**. Do not register a product ID yet. “Europass” is the
|
||||
research topic; use as a public template name remains an explicit maintainer decision with an unresolved
|
||||
rights basis. The design contains no Europass wordmark, EU flag, emblem, endorsement, official copyright
|
||||
footer, or interoperability badge. General website information reuse does not settle branding rights.
|
||||
|
||||
The proposed default is A4, white background, dark blue `#1e5580`, charcoal `#20262b`, 36 pt side margins,
|
||||
a 128 pt label/date area and 16 pt gap, with details beginning at x = 180 pt. Body text is 10.5 pt sans-serif,
|
||||
headings are 10 pt bold, and the name is 23 pt. The line and color choices are proposals, not official tokens.
|
||||
The static one-page drawing uses more deliberate section spacing than the dense overflow study.
|
||||
|
||||
Deviations requiring approval:
|
||||
|
||||
1. An independent unbranded design, with neutral provisional name, instead of an exact official clone.
|
||||
2. A chronology gutter for dates and headings, coordinated with Plan 24 rather than introducing a new
|
||||
date-column schema here. Empty date cells keep alignment; periods are never parsed or normalized.
|
||||
3. Plain language/fluency text instead of the five-dimensional language grid. Numeric levels are not CEFR
|
||||
evidence. Skill ratings are hidden by the fixture's existing design setting.
|
||||
4. No compulsory photo or personal attributes. Photo-free examples reserve no blank frame. Optional photo
|
||||
placement and mixed-script examples still need a separate visual pass before renderer approval.
|
||||
5. Existing section titles and custom sections remain available. The concept does not force a fixed set of
|
||||
official headings or discard additional resume sections.
|
||||
6. Continuation pages retain only a small name/running header and page number, with content flowing below.
|
||||
The synthetic approval watermark is an artifact annotation, not proposed resume output.
|
||||
|
||||
## Unresolved claims and handoff gate
|
||||
|
||||
- Permission to ship the Europass name, logo, exact branded template or official-looking footer is **not
|
||||
established**. No such permission is inferred from S2 or S6. If maintainers require branding or an exact
|
||||
clone, resolve rights and reference choice before any implementation.
|
||||
- The chosen legacy structure is documented, but whether it satisfies the request for a current built-in
|
||||
Europass option needs maintainer review of these actual artifacts. A current editor design would be a
|
||||
different reference-selection task, not a silent replacement.
|
||||
- Mandatory CV-editor fields, exact language availability, and export embedding details were not validated
|
||||
interactively. Official pages vary in language counts; this proposal makes no count or import promise.
|
||||
- Structured CEFR dimensions, mother-tongue flags and qualification-framework levels are absent from
|
||||
current ResumeData. They are omissions, not guessed values. See the complete mapping.
|
||||
- Renderer pagination, links, fonts, RTL shaping, tagged accessibility and machine extraction are untested
|
||||
for this proposal. Static artifacts are not evidence that a future PDF renderer implements those behaviors.
|
||||
- This task stops at the planned concrete-design gate. Approval must identify the canonical SVG set,
|
||||
public naming/branding choice and accepted data omissions; it cannot be inferred from general plan approval.
|
||||
|
||||
Follow-up implementation remains conditional. It would require the plan's schema, semantic manifest,
|
||||
gallery, renderer, pagination, extraction, localization, typecheck, build and boundary checks after the
|
||||
maintainer approves the design. No implementation, push, PR creation, issue comment or issue closure occurred here.
|
||||
@@ -0,0 +1,53 @@
|
||||
# Visual artifact provenance
|
||||
|
||||
Created 2026-09-06 for Plan 33A. All biographical content, organizations, qualifications and achievements are
|
||||
synthetic. `example.invalid` links are intentionally nonresolving test data. No personal files, CVs, account
|
||||
data or real portrait were used.
|
||||
|
||||
## Canonical static artifacts
|
||||
|
||||
`one-page.svg` and `overflow-1.svg` through `overflow-3.svg` are editable static drawings with text traced
|
||||
to [fixture](../synthetic-fixtures.json) paths using `data-source`. They are research artifacts, not a resume
|
||||
renderer or template implementation. SVG source is the reproducible artifact; raster previews are optional.
|
||||
|
||||
`reference-comparison.svg` juxtaposes an original analytical schematic with the one-page SVG. The schematic
|
||||
describes the selected [official EEAS reference](https://www.eeas.europa.eu/sites/default/files/documents/2025/Europass-cv-en%20template_0.pdf),
|
||||
© European Union, accessed 2026-09-06. It is not a screenshot or faithful reproduction, omits the mark and
|
||||
recruitment-specific content, and labels the legacy provenance. Original reference remains on its official host.
|
||||
|
||||
The static drawings use sans-serif text and editable geometry. Browser rendering may select a different
|
||||
installed font. They are intentionally independent of the app, and include no network resource dependencies.
|
||||
An isolated PyMuPDF environment was used to rasterize the drawings for visual inspection. No raster screenshot
|
||||
is evidence of Reactive Resume's PDF behavior.
|
||||
|
||||
To regenerate a raster from the canonical SVG without application dependencies:
|
||||
|
||||
```sh
|
||||
uv run --with pymupdf python - <<'PY'
|
||||
from pathlib import Path
|
||||
import pymupdf
|
||||
|
||||
source = Path("docs/research/europass/artifacts/one-page.svg")
|
||||
image = pymupdf.open("svg", source.read_bytes())
|
||||
pdf = pymupdf.open("pdf", image.convert_to_pdf())
|
||||
pdf[0].get_pixmap(matrix=pymupdf.Matrix(2, 2)).save("one-page-review.png")
|
||||
PY
|
||||
```
|
||||
|
||||
## Supplementary image generation
|
||||
|
||||
`concept-one-page.png` was generated with the built-in image generation tool. No CLI/API fallback was used.
|
||||
The selected output was copied into this repository; review does not require the tool's private output folder.
|
||||
It is a visual exploration only. Its name is positioned farther right, rules span both columns, some typography
|
||||
and spacing differ, and it adds minor presentational punctuation/“area” wording. These differences are not
|
||||
approved specification changes. The mapped SVGs and fixture take precedence over generated pixels.
|
||||
|
||||
Exact prompt:
|
||||
|
||||
```text
|
||||
Use case: productivity-visual. Asset type: static CV design proposal, one portrait A4 page, straight-on flat white document, no desk or mockup shadows. Independent unbranded European chronological CV concept, not an official document. Exact synthetic content only. Header at upper right of broad content column: Alex Marin in large dark blue sans serif, below it Research coordinator; below: Brussels, Belgium | alex.marin@example.invalid. Narrow reading-start column for dates and section labels (about 27 percent), broad content column 73 percent, thin blue horizontal section rules. Airy white page, charcoal 10.5pt-equivalent body, dark blue uppercase section headings. No photograph and no placeholder box. Sections exact text: ABOUT ME: Research coordinator building clear public-service guidance. WORK EXPERIENCE: date 2023 – Present, title Research coordinator, organisation Civic Atlas Lab, Brussels, Belgium. Two bullets: Coordinated multilingual guidance reviews. Published accessible research summaries. EDUCATION AND TRAINING: date 2019 – 2022, title BA Social Research, organisation Northbridge Institute, area Public policy. LANGUAGE SKILLS: English — Native; French — B2 (self-assessed). SKILLS: Research — Advanced; Interviews, synthesis, documentation. PROJECTS: date 2025, title Open Guidance Map; Mapped public learning resources. OTHER ACTIVITIES: Community workshops and peer mentoring. Footer small: SYNTHETIC DESIGN PROPOSAL · NOT APPROVED, with 1 / 1 at right. No logos, EU flag, stars, Europass wordmark, compliance claims, nationality, date of birth, QR codes, extra personal facts, ratings or CEFR matrix. All text legible. This is concept direction only; deterministic separate artifacts will govern exact mapping.
|
||||
```
|
||||
|
||||
This image was inspected for recognizable text, missing sections, branding and private-data leakage. All seven
|
||||
intended sections are present and no official mark or portrait appears. No image-generation claim is used as
|
||||
evidence about official guidance, reuse rights, application behavior or field support.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 941 KiB |
@@ -0,0 +1,44 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="595.28pt" height="841.89pt" viewBox="0 0 595.28 841.89" role="img" aria-labelledby="title desc"><title id="title">One-page visual proposal</title><desc id="desc">Synthetic ResumeData illustration. Static layout, not renderer output. See mapping.md.</desc><g font-family="Helvetica"><rect width="595.28" height="841.89" fill="white"/>
|
||||
<text font-family="sans-serif" x="180" y="62" font-size="23" fill="#1e5580" font-weight="700" data-source="basics.name">Alex Marin</text>
|
||||
<text font-family="sans-serif" x="180" y="88" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.headline">Research coordinator</text>
|
||||
<text font-family="sans-serif" x="180" y="109" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="180" y="126" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.email">alex.marin@example.invalid</text>
|
||||
<text font-family="sans-serif" x="36" y="168" font-size="10" fill="#1e5580" font-weight="700" data-source="summary.title">ABOUT ME</text>
|
||||
<path d="M180 165 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180" y="190" font-size="10.5" fill="#20262b" font-weight="400" data-source="summary.content">Research coordinator building clear public-service guidance.</text>
|
||||
<text font-family="sans-serif" x="36" y="231" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.experience.title">WORK EXPERIENCE</text>
|
||||
<path d="M180 228 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36" y="254" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].period">2023 – Present</text>
|
||||
<text font-family="sans-serif" x="180" y="254" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.experience.items[0].position">Research coordinator</text>
|
||||
<text font-family="sans-serif" x="180" y="272" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].company">Civic Atlas Lab</text>
|
||||
<text font-family="sans-serif" x="180" y="289" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="180" y="309" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">• Coordinated multilingual guidance reviews.</text>
|
||||
<text font-family="sans-serif" x="180" y="326" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">• Published accessible research summaries.</text>
|
||||
<text font-family="sans-serif" x="36" y="367" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">EDUCATION AND</text>
|
||||
<text font-family="sans-serif" x="36" y="380" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">TRAINING</text>
|
||||
<path d="M180 364 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36" y="401" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].period">2019 – 2022</text>
|
||||
<text font-family="sans-serif" x="180" y="401" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.education.items[0].degree">BA Social Research</text>
|
||||
<text font-family="sans-serif" x="180" y="419" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].school">Northbridge Institute</text>
|
||||
<text font-family="sans-serif" x="180" y="436" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].area">Public policy</text>
|
||||
<text font-family="sans-serif" x="36" y="477" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.languages.title">LANGUAGE SKILLS</text>
|
||||
<path d="M180 474 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180" y="500" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.languages.items[0].language">English</text>
|
||||
<text font-family="sans-serif" x="270" y="500" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[0].fluency">Native</text>
|
||||
<text font-family="sans-serif" x="180" y="521" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.languages.items[1].language">French</text>
|
||||
<text font-family="sans-serif" x="270" y="521" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[1].fluency">B2 (self-assessed)</text>
|
||||
<text font-family="sans-serif" x="36" y="562" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.skills.title">SKILLS</text>
|
||||
<path d="M180 559 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180" y="585" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.skills.items[0].name">Research</text>
|
||||
<text font-family="sans-serif" x="270" y="585" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].proficiency">Advanced</text>
|
||||
<text font-family="sans-serif" x="180" y="606" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].keywords">Interviews, synthesis, documentation</text>
|
||||
<text font-family="sans-serif" x="36" y="647" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.projects.title">PROJECTS</text>
|
||||
<path d="M180 644 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36" y="670" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].period">2025</text>
|
||||
<text font-family="sans-serif" x="180" y="670" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.projects.items[0].name">Open Guidance Map</text>
|
||||
<text font-family="sans-serif" x="180" y="690" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Mapped public learning resources.</text>
|
||||
<text font-family="sans-serif" x="36" y="731" font-size="10" fill="#1e5580" font-weight="700" data-source="customSections[0].title">OTHER ACTIVITIES</text>
|
||||
<path d="M180 728 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180" y="754" font-size="10.5" fill="#20262b" font-weight="400" data-source="customSections[0].items[0].content">Community workshops and peer mentoring.</text>
|
||||
<text font-family="sans-serif" x="36" y="808" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">SYNTHETIC DESIGN PROPOSAL · NOT APPROVED</text>
|
||||
<text font-family="sans-serif" x="526" y="808" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">1 / 1</text></g></svg>
|
||||
|
After Width: | Height: | Size: 6.6 KiB |
@@ -0,0 +1,50 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="595.28pt" height="841.89pt" viewBox="0 0 595.28 841.89" role="img" aria-labelledby="title desc"><title id="title">overflow visual proposal, page 1</title><desc id="desc">Synthetic ResumeData illustration. Static pagination, not renderer output. See mapping.md.</desc><g font-family="Helvetica"><rect width="595.28" height="841.89" fill="white"/>
|
||||
<text font-family="sans-serif" x="180.00" y="59.00" font-size="23" fill="#1e5580" font-weight="700" data-source="basics.name">Alexandra Noor Marin-López</text>
|
||||
<text font-family="sans-serif" x="180.00" y="86.00" font-size="10.5" fill="#1e5580" font-weight="400" data-source="basics.headline">Research coordinator for multilingual public-service information</text>
|
||||
<text font-family="sans-serif" x="180.00" y="103.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="180.00" y="121.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.email">alex.marin@example.invalid</text>
|
||||
<text font-family="sans-serif" x="180.00" y="139.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.website.label">Research portfolio</text>
|
||||
<text font-family="sans-serif" x="180.00" y="156.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.customFields[0].text">Available for cross-border project work</text>
|
||||
<text font-family="sans-serif" x="36.00" y="190.50" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.profiles.title">PROFILES</text>
|
||||
<path d="M180 187.50 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="210.50" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.profiles.items[0].network">Portfolio</text>
|
||||
<text font-family="sans-serif" x="180.00" y="228.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.profiles.items[0].username">alexandra</text>
|
||||
<text font-family="sans-serif" x="180.00" y="245.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.profiles.items[0].website.label">Selected writing</text>
|
||||
<text font-family="sans-serif" x="36.00" y="282.60" font-size="10" fill="#1e5580" font-weight="700" data-source="summary.title">ABOUT ME</text>
|
||||
<path d="M180 279.60 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="302.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="summary.content">Research coordinator building clear public-service guidance.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="333.30" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.experience.title">WORK EXPERIENCE</text>
|
||||
<path d="M180 330.30 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="353.30" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].period">2023 – Present</text>
|
||||
<text font-family="sans-serif" x="180.00" y="353.30" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.experience.items[0].position">Research coordinator</text>
|
||||
<text font-family="sans-serif" x="180.00" y="371.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].company">Civic Atlas Lab</text>
|
||||
<text font-family="sans-serif" x="180.00" y="388.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="180.00" y="406.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">Supported a distributed team producing accessible guidance for community</text>
|
||||
<text font-family="sans-serif" x="180.00" y="421.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">learning programmes.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="439.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[0].period">September 2024 –</text>
|
||||
<text font-family="sans-serif" x="36.00" y="454.50" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[0].period">Present</text>
|
||||
<text font-family="sans-serif" x="36.00" y="469.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[0].period">(part-time)</text>
|
||||
<text font-family="sans-serif" x="180.00" y="439.80" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.experience.items[0].roles[0].position">Programme lead</text>
|
||||
<text font-family="sans-serif" x="180.00" y="483.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[0].description">Led editorial planning across four working languages.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="502.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[1].period">January 2023 – August</text>
|
||||
<text font-family="sans-serif" x="36.00" y="517.30" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[1].period">2024</text>
|
||||
<text font-family="sans-serif" x="180.00" y="502.60" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.experience.items[0].roles[1].position">Research associate</text>
|
||||
<text font-family="sans-serif" x="180.00" y="532.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].roles[1].description">Built an evidence catalogue for public learning services.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="557.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[1].period">Autumn 2021 – Summer</text>
|
||||
<text font-family="sans-serif" x="36.00" y="572.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[1].period">2022</text>
|
||||
<text font-family="sans-serif" x="180.00" y="557.70" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.experience.items[1].position">Research assistant</text>
|
||||
<text font-family="sans-serif" x="180.00" y="575.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[1].company">Open Learning Observatory</text>
|
||||
<text font-family="sans-serif" x="180.00" y="593.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[1].location">Leuven, Belgium</text>
|
||||
<text font-family="sans-serif" x="180.00" y="610.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[1].description">Collected public documentation and organised findings for volunteer reviewers.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="648.50" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">EDUCATION AND</text>
|
||||
<text font-family="sans-serif" x="36.00" y="661.50" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">TRAINING</text>
|
||||
<path d="M180 645.50 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="680.50" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].period">2019 – 2022</text>
|
||||
<text font-family="sans-serif" x="180.00" y="680.50" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.education.items[0].degree">BA Social Research</text>
|
||||
<text font-family="sans-serif" x="180.00" y="698.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].school">Northbridge Institute</text>
|
||||
<text font-family="sans-serif" x="180.00" y="715.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].area">Public policy</text>
|
||||
<text font-family="sans-serif" x="180.00" y="733.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].grade">Distinction</text>
|
||||
<text font-family="sans-serif" x="180.00" y="751.30" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].location">Leuven, Belgium</text>
|
||||
|
||||
<text font-family="sans-serif" x="36.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">SYNTHETIC DESIGN PROPOSAL · NOT APPROVED</text>
|
||||
<text font-family="sans-serif" x="526.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">1 / 3</text></g></svg>
|
||||
|
After Width: | Height: | Size: 8.4 KiB |
@@ -0,0 +1,45 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="595.28pt" height="841.89pt" viewBox="0 0 595.28 841.89" role="img" aria-labelledby="title desc"><title id="title">overflow visual proposal, page 2</title><desc id="desc">Synthetic ResumeData illustration. Static pagination, not renderer output. See mapping.md.</desc><g font-family="Helvetica"><rect width="595.28" height="841.89" fill="white"/>
|
||||
<text font-family="sans-serif" x="36.00" y="42.00" font-size="11" fill="#1e5580" font-weight="700" data-source="basics.name">Alexandra Noor Marin-López</text>
|
||||
<text font-family="sans-serif" x="420.00" y="42.00" font-size="9" fill="#1e5580" font-weight="400" data-source="proposal.annotation">Continuation</text>
|
||||
<path d="M36 52 H559" stroke="#c2cdd5"/><text font-family="sans-serif" x="36" y="76" font-size="10" fill="#1e5580" data-source="proposal.annotation">EDUCATION</text><text font-family="sans-serif" x="36" y="89" font-size="10" fill="#1e5580" data-source="proposal.annotation">CONTINUED</text><text font-family="sans-serif" x="180" y="76" font-size="10.5" data-source="sections.education.items[0].description">Studied research methods, plain-language writing and collaborative</text><text font-family="sans-serif" x="180" y="90.7" font-size="10.5" data-source="sections.education.items[0].description">service design.</text>
|
||||
|
||||
<text font-family="sans-serif" x="36.00" y="153.70" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.projects.title">PROJECTS</text>
|
||||
<path d="M180 150.70 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="173.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].period">2025</text>
|
||||
<text font-family="sans-serif" x="180.00" y="173.70" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.projects.items[0].name">Open Guidance Map</text>
|
||||
<text font-family="sans-serif" x="180.00" y="191.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Mapped public learning resources.</text>
|
||||
<text font-family="sans-serif" x="180.00" y="210.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Reviewed regional catalogues with volunteers, comparing the</text>
|
||||
<text font-family="sans-serif" x="180.00" y="224.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">clarity of eligibility, learning outcomes and application</text>
|
||||
<text font-family="sans-serif" x="180.00" y="239.50" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">guidance. Each record includes an attributed source and an</text>
|
||||
<text font-family="sans-serif" x="180.00" y="254.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">editorial review date.</text>
|
||||
<text font-family="sans-serif" x="180.00" y="272.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Documented ambiguous wording without guessing the</text>
|
||||
<text font-family="sans-serif" x="180.00" y="287.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">provider’s intent. Workshop participants tested revised</text>
|
||||
<text font-family="sans-serif" x="180.00" y="302.30" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">navigation labels and contributed examples of questions</text>
|
||||
<text font-family="sans-serif" x="180.00" y="317.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">that the directory should answer.</text>
|
||||
<text font-family="sans-serif" x="180.00" y="335.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Prepared a maintenance guide so future editors can update</text>
|
||||
<text font-family="sans-serif" x="180.00" y="350.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">links, preserve context and flag missing evidence. The guide</text>
|
||||
<text font-family="sans-serif" x="180.00" y="365.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">separates direct source statements from editorial</text>
|
||||
<text font-family="sans-serif" x="180.00" y="379.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">interpretations.</text>
|
||||
<text font-family="sans-serif" x="180.00" y="405.50" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.projects.items[1].name">Undated community handbook</text>
|
||||
<text font-family="sans-serif" x="180.00" y="423.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[1].website.url">https://example.invalid/learning/resources/</text>
|
||||
<text font-family="sans-serif" x="180.00" y="437.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[1].website.url">community-handbook/review-notes</text>
|
||||
<text font-family="sans-serif" x="180.00" y="455.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[1].description">Collected workshop notes without inventing a project date.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="493.30" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.languages.title">LANGUAGE SKILLS</text>
|
||||
<path d="M180 490.30 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="513.30" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.languages.items[0].language">English</text>
|
||||
<text font-family="sans-serif" x="180.00" y="531.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[0].fluency">Native</text>
|
||||
<text font-family="sans-serif" x="180.00" y="555.70" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.languages.items[1].language">French</text>
|
||||
<text font-family="sans-serif" x="180.00" y="573.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[1].fluency">B2 (self-assessed)</text>
|
||||
<text font-family="sans-serif" x="36.00" y="610.10" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.skills.title">SKILLS</text>
|
||||
<path d="M180 607.10 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="630.10" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.skills.items[0].name">Research</text>
|
||||
<text font-family="sans-serif" x="180.00" y="647.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].proficiency">Advanced</text>
|
||||
<text font-family="sans-serif" x="180.00" y="665.50" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].keywords">Interviews, synthesis, documentation</text>
|
||||
<text font-family="sans-serif" x="36.00" y="702.20" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.awards.title">AWARDS</text>
|
||||
<path d="M180 699.20 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="722.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.awards.items[0].date">2025</text>
|
||||
<text font-family="sans-serif" x="180.00" y="722.20" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.awards.items[0].title">Community research recognition</text>
|
||||
<text font-family="sans-serif" x="180.00" y="739.90" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.awards.items[0].awarder">Civic Learning Forum</text>
|
||||
<text font-family="sans-serif" x="180.00" y="757.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.awards.items[0].description">Recognised collaborative documentation work.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">SYNTHETIC DESIGN PROPOSAL · NOT APPROVED</text>
|
||||
<text font-family="sans-serif" x="526.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">2 / 3</text></g></svg>
|
||||
|
After Width: | Height: | Size: 8.2 KiB |
@@ -0,0 +1,32 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="595.28pt" height="841.89pt" viewBox="0 0 595.28 841.89" role="img" aria-labelledby="title desc"><title id="title">overflow visual proposal, page 3</title><desc id="desc">Synthetic ResumeData illustration. Static pagination, not renderer output. See mapping.md.</desc><g font-family="Helvetica"><rect width="595.28" height="841.89" fill="white"/>
|
||||
<text font-family="sans-serif" x="36.00" y="42.00" font-size="11" fill="#1e5580" font-weight="700" data-source="basics.name">Alexandra Noor Marin-López</text>
|
||||
<text font-family="sans-serif" x="420.00" y="42.00" font-size="9" fill="#1e5580" font-weight="400" data-source="proposal.annotation">Continuation</text>
|
||||
<path d="M36 52 H559" stroke="#c2cdd5"/>
|
||||
<text font-family="sans-serif" x="36.00" y="76.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.certifications.title">CERTIFICATIONS</text>
|
||||
<path d="M180 73.00 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="96.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.certifications.items[0].date">2024</text>
|
||||
<text font-family="sans-serif" x="180.00" y="96.00" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.certifications.items[0].title">Accessible writing workshop</text>
|
||||
<text font-family="sans-serif" x="180.00" y="113.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.certifications.items[0].issuer">Open Training Collective</text>
|
||||
<text font-family="sans-serif" x="36.00" y="166.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.publications.title">PUBLICATIONS</text>
|
||||
<path d="M180 163.00 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="186.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.publications.items[0].date">2025</text>
|
||||
<text font-family="sans-serif" x="180.00" y="186.00" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.publications.items[0].title">A practical guide to learning directories</text>
|
||||
<text font-family="sans-serif" x="180.00" y="203.70" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.publications.items[0].publisher">Community Methods Review</text>
|
||||
<text font-family="sans-serif" x="36.00" y="240.40" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.volunteer.title">VOLUNTEERING</text>
|
||||
<path d="M180 237.40 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="36.00" y="260.40" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.volunteer.items[0].period">2022 – Present</text>
|
||||
<text font-family="sans-serif" x="180.00" y="260.40" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.volunteer.items[0].organization">Neighbourhood Learning Circle</text>
|
||||
<text font-family="sans-serif" x="180.00" y="278.10" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.volunteer.items[0].location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="180.00" y="295.80" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.volunteer.items[0].description">Facilitated peer mentoring sessions.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="333.50" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.interests.title">INTERESTS</text>
|
||||
<path d="M180 330.50 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="353.50" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.interests.items[0].name">Walking</text>
|
||||
<text font-family="sans-serif" x="180.00" y="371.20" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.interests.items[0].keywords">Urban history, public spaces</text>
|
||||
<text font-family="sans-serif" x="36.00" y="407.90" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.references.title">REFERENCES</text>
|
||||
<path d="M180 404.90 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="427.90" font-size="10.5" fill="#1e5580" font-weight="700" data-source="sections.references.items[0].name">Available upon request</text>
|
||||
<text font-family="sans-serif" x="36.00" y="464.60" font-size="10" fill="#1e5580" font-weight="700" data-source="customSections[0].title">OTHER ACTIVITIES</text>
|
||||
<path d="M180 461.60 H559" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="180.00" y="484.60" font-size="10.5" fill="#20262b" font-weight="400" data-source="customSections[0].items[0].content">Community workshops and peer mentoring.</text>
|
||||
<text font-family="sans-serif" x="36.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">SYNTHETIC DESIGN PROPOSAL · NOT APPROVED</text>
|
||||
<text font-family="sans-serif" x="526.00" y="808.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">3 / 3</text></g></svg>
|
||||
|
After Width: | Height: | Size: 4.9 KiB |
@@ -0,0 +1,88 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1320" height="1150" viewBox="0 0 1320 1150" role="img" aria-labelledby="title desc"><title id="title">Official reference structure and independent proposal</title><desc id="desc">Left is an analytical schematic of the legacy EEAS-hosted Europass form, not a reproduction. Right is the synthetic proposal. See README.md for source and reuse limits.</desc><rect width="1320" height="1150" fill="#edf1f4"/>
|
||||
<text x="40" y="45" font-family="sans-serif" font-size="26" fill="#20262b">REFERENCE → PROPOSAL</text>
|
||||
<text x="40" y="77" font-family="sans-serif" font-size="16" fill="#20262b">Plan 33A · research only · synthetic content · visual approval pending</text>
|
||||
<text x="40" y="119" font-family="sans-serif" font-size="19" fill="#20262b">Observed legacy structure — analytical schematic</text>
|
||||
<text x="680" y="119" font-family="sans-serif" font-size="19" fill="#20262b">European chronology — mapped proposal</text>
|
||||
<rect x="40" y="140" width="595" height="842" fill="white"/>
|
||||
<text x="70" y="178" font-family="sans-serif" font-size="13" fill="#20262b">Legacy source: EEAS PDF, © European Union</text>
|
||||
<text x="70" y="199" font-family="sans-serif" font-size="13" fill="#20262b">2002–2018 document; 2025 hosting path</text>
|
||||
<text x="70" y="227" font-family="sans-serif" font-size="12" fill="#56636d">Brand mark intentionally not reproduced</text>
|
||||
<text x="70" y="280" font-family="sans-serif" font-size="13" fill="#1e5580">Personal information</text>
|
||||
<path d="M245 275 H605" stroke="#1e5580"/>
|
||||
<text x="245" y="304" font-family="sans-serif" font-size="13" fill="#20262b">Name and contacts</text>
|
||||
<text x="70" y="395" font-family="sans-serif" font-size="13" fill="#1e5580">Work experience</text>
|
||||
<path d="M245 390 H605" stroke="#1e5580"/>
|
||||
<text x="245" y="419" font-family="sans-serif" font-size="13" fill="#20262b">Position · employer · responsibilities</text>
|
||||
<text x="70" y="423" font-family="sans-serif" font-size="12" fill="#20262b">Date range</text>
|
||||
<text x="70" y="510" font-family="sans-serif" font-size="13" fill="#1e5580">Education and training</text>
|
||||
<path d="M245 505 H605" stroke="#1e5580"/>
|
||||
<text x="245" y="534" font-family="sans-serif" font-size="13" fill="#20262b">Qualification · institution · subjects</text>
|
||||
<text x="70" y="538" font-family="sans-serif" font-size="12" fill="#20262b">Date range</text>
|
||||
<text x="70" y="625" font-family="sans-serif" font-size="13" fill="#1e5580">Personal skills</text>
|
||||
<path d="M245 620 H605" stroke="#1e5580"/>
|
||||
<text x="245" y="649" font-family="sans-serif" font-size="13" fill="#20262b">Mother tongue; five language dimensions</text>
|
||||
<rect x="245" y="674" width="70" height="42" fill="none" stroke="#b1bcc4"/>
|
||||
<text x="252" y="700" font-family="sans-serif" font-size="12" fill="#20262b">1</text>
|
||||
<rect x="315" y="674" width="70" height="42" fill="none" stroke="#b1bcc4"/>
|
||||
<text x="322" y="700" font-family="sans-serif" font-size="12" fill="#20262b">2</text>
|
||||
<rect x="385" y="674" width="70" height="42" fill="none" stroke="#b1bcc4"/>
|
||||
<text x="392" y="700" font-family="sans-serif" font-size="12" fill="#20262b">3</text>
|
||||
<rect x="455" y="674" width="70" height="42" fill="none" stroke="#b1bcc4"/>
|
||||
<text x="462" y="700" font-family="sans-serif" font-size="12" fill="#20262b">4</text>
|
||||
<rect x="525" y="674" width="70" height="42" fill="none" stroke="#b1bcc4"/>
|
||||
<text x="532" y="700" font-family="sans-serif" font-size="12" fill="#20262b">5</text>
|
||||
<text x="245" y="739" font-family="sans-serif" font-size="12" fill="#20262b">No conversion from a single numeric rating</text>
|
||||
<text x="70" y="790" font-family="sans-serif" font-size="13" fill="#1e5580">Other skills</text>
|
||||
<path d="M245 785 H605" stroke="#1e5580"/>
|
||||
<text x="245" y="814" font-family="sans-serif" font-size="13" fill="#20262b">Communication · organisation · job skills</text>
|
||||
<text x="70" y="943" font-family="sans-serif" font-size="12" fill="#56636d">Structure only; source-specific recruitment text omitted</text>
|
||||
<g><title id="proposal-title">One-page visual proposal</title><desc id="proposal-desc">Synthetic ResumeData illustration. Static layout, not renderer output. See mapping.md.</desc><g font-family="Helvetica"><rect x="680" y="140" width="595.28" height="841.89" fill="white"/>
|
||||
<text font-family="sans-serif" x="860.00" y="202.00" font-size="23" fill="#1e5580" font-weight="700" data-source="basics.name">Alex Marin</text>
|
||||
<text font-family="sans-serif" x="860.00" y="228.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.headline">Research coordinator</text>
|
||||
<text font-family="sans-serif" x="860.00" y="249.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="860.00" y="266.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="basics.email">alex.marin@example.invalid</text>
|
||||
<text font-family="sans-serif" x="716.00" y="308.00" font-size="10" fill="#1e5580" font-weight="700" data-source="summary.title">ABOUT ME</text>
|
||||
<path d="M860 305.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="860.00" y="330.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="summary.content">Research coordinator building clear public-service guidance.</text>
|
||||
<text font-family="sans-serif" x="716.00" y="371.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.experience.title">WORK EXPERIENCE</text>
|
||||
<path d="M860 368.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="716.00" y="394.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].period">2023 – Present</text>
|
||||
<text font-family="sans-serif" x="860.00" y="394.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.experience.items[0].position">Research coordinator</text>
|
||||
<text font-family="sans-serif" x="860.00" y="412.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].company">Civic Atlas Lab</text>
|
||||
<text font-family="sans-serif" x="860.00" y="429.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].location">Brussels, Belgium</text>
|
||||
<text font-family="sans-serif" x="860.00" y="449.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">• Coordinated multilingual guidance reviews.</text>
|
||||
<text font-family="sans-serif" x="860.00" y="466.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.experience.items[0].description">• Published accessible research summaries.</text>
|
||||
<text font-family="sans-serif" x="716.00" y="507.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">EDUCATION AND</text>
|
||||
<text font-family="sans-serif" x="716.00" y="520.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.education.title">TRAINING</text>
|
||||
<path d="M860 504.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="716.00" y="541.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].period">2019 – 2022</text>
|
||||
<text font-family="sans-serif" x="860.00" y="541.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.education.items[0].degree">BA Social Research</text>
|
||||
<text font-family="sans-serif" x="860.00" y="559.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].school">Northbridge Institute</text>
|
||||
<text font-family="sans-serif" x="860.00" y="576.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.education.items[0].area">Public policy</text>
|
||||
<text font-family="sans-serif" x="716.00" y="617.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.languages.title">LANGUAGE SKILLS</text>
|
||||
<path d="M860 614.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="860.00" y="640.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.languages.items[0].language">English</text>
|
||||
<text font-family="sans-serif" x="950.00" y="640.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[0].fluency">Native</text>
|
||||
<text font-family="sans-serif" x="860.00" y="661.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.languages.items[1].language">French</text>
|
||||
<text font-family="sans-serif" x="950.00" y="661.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.languages.items[1].fluency">B2 (self-assessed)</text>
|
||||
<text font-family="sans-serif" x="716.00" y="702.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.skills.title">SKILLS</text>
|
||||
<path d="M860 699.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="860.00" y="725.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.skills.items[0].name">Research</text>
|
||||
<text font-family="sans-serif" x="950.00" y="725.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].proficiency">Advanced</text>
|
||||
<text font-family="sans-serif" x="860.00" y="746.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.skills.items[0].keywords">Interviews, synthesis, documentation</text>
|
||||
<text font-family="sans-serif" x="716.00" y="787.00" font-size="10" fill="#1e5580" font-weight="700" data-source="sections.projects.title">PROJECTS</text>
|
||||
<path d="M860 784.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="716.00" y="810.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].period">2025</text>
|
||||
<text font-family="sans-serif" x="860.00" y="810.00" font-size="10.5" fill="#20262b" font-weight="700" data-source="sections.projects.items[0].name">Open Guidance Map</text>
|
||||
<text font-family="sans-serif" x="860.00" y="830.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="sections.projects.items[0].description">Mapped public learning resources.</text>
|
||||
<text font-family="sans-serif" x="716.00" y="871.00" font-size="10" fill="#1e5580" font-weight="700" data-source="customSections[0].title">OTHER ACTIVITIES</text>
|
||||
<path d="M860 868.00 H1239" stroke="#1e5580" stroke-width="0.8"/>
|
||||
<text font-family="sans-serif" x="860.00" y="894.00" font-size="10.5" fill="#20262b" font-weight="400" data-source="customSections[0].items[0].content">Community workshops and peer mentoring.</text>
|
||||
<text font-family="sans-serif" x="716.00" y="948.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">SYNTHETIC DESIGN PROPOSAL · NOT APPROVED</text>
|
||||
<text font-family="sans-serif" x="1206.00" y="948.00" font-size="8" fill="#56636d" font-weight="400" data-source="proposal.annotation">1 / 1</text></g></g>
|
||||
|
||||
<text x="40" y="1022" font-family="sans-serif" font-size="17" fill="#20262b">Keep: chronological gutter, blue section rules, broad content column.</text>
|
||||
<text x="40" y="1054" font-family="sans-serif" font-size="17" fill="#20262b">Change: neutral identity, optional personal fields, plain-text fluency, user-authored sections.</text>
|
||||
<text x="40" y="1086" font-family="sans-serif" font-size="15" fill="#20262b">Current Europass offers several layouts; this legacy structure is not a universal current specification.</text>
|
||||
<text x="40" y="1120" font-family="sans-serif" font-size="13" fill="#20262b">Reference URL, access date, exact field mapping and unresolved reuse decisions: ../README.md and ../mapping.md</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 11 KiB |
@@ -0,0 +1,133 @@
|
||||
# Existing ResumeData to proposed visual fields
|
||||
|
||||
Read against `b85d285b69843612e9d7f0ab802248982e7bf0ea`. The source of truth is
|
||||
[data.ts](../../../packages/schema/src/resume/data.ts), with existing defaults in
|
||||
[default.ts](../../../packages/schema/src/resume/default.ts) and visibility behavior in
|
||||
[shared filtering](../../../packages/pdf/src/templates/shared/filtering.ts).
|
||||
This document proposes presentation; it adds no fields or renderer behavior.
|
||||
|
||||
Both fixture records were validated against the current Zod `resumeDataSchema`. The checked-in generated
|
||||
`packages/schema/schema.json` rejects the current `picture.fit` field; it is stale relative to `data.ts` at
|
||||
this revision. That unrelated generated-schema mismatch is recorded, not repaired in this research unit.
|
||||
|
||||
The canonical SVG text nodes carry `data-source` paths into the matching object in
|
||||
[synthetic-fixtures.json](synthetic-fixtures.json). Wrapped text uses the same path on each line.
|
||||
Section titles are shown in uppercase in these English drawings; source strings retain their original case.
|
||||
`proposal.annotation` means review metadata, not ResumeData: synthetic watermark, continuation labels and
|
||||
page numbers. The repeated running name still comes from `basics.name`.
|
||||
|
||||
## Header and shared fields
|
||||
|
||||
| Proposed display | Existing path | Rule / absence behavior |
|
||||
| --- | --- | --- |
|
||||
| Name and running name | `basics.name` | Preserve full name; do not split first/last names or reorder culturally. Wrap long names. Empty name renders no invented label. |
|
||||
| Professional headline | `basics.headline` | Optional text, wraps within the detail width. It is not an official occupational code. |
|
||||
| Contact location | `basics.location` | One free string; no parsing into country/address. Do not invent a full postal address. |
|
||||
| Email and phone | `basics.email`, `basics.phone` | Omit empty values and separators. Phone is empty in both fixtures; no number is fabricated. Future renderer uses existing link handling. |
|
||||
| Personal website | `basics.website.url`, `.label` | Nonempty URL uses label when provided, URL otherwise. Overflow displays “Research portfolio.” SVGs illustrate text only; hyperlink behavior needs implementation checks. |
|
||||
| Other personal detail | `basics.customFields[].text`, `.link`, `.icon` | Display user-authored text/link in order. Overflow shows availability. No semantic inference from text. There is no per-field hidden flag; empty text yields no visual row. |
|
||||
| Optional photo | `picture.url`, `.hidden`, `.fit`, `.size`, `.rotation`, `.aspectRatio`, border/shadow fields | Both fixtures have no URL and `hidden: true`; no frame is displayed. Future visible photo uses existing upload/picture contract and preserves cover/contain choice. Suggested reading-start header frame is not visually approved. Failed image handling needs future verification. |
|
||||
| Section heading | `summary.title`, `sections.<type>.title`, `customSections[].title` | Use authored title; empty title uses existing localized fallback. Do not replace custom titles with fixed Europass labels. |
|
||||
| Section presence/order | `metadata.layout.pages[].main`, `.sidebar`, `sections.*.hidden`, `customSections[].hidden`, `summary.hidden` | Respect authored page/column order and visibility. Missing-from-layout is distinct from hidden. Fixtures choose one authored full-width page; physical overflow is illustrated separately. |
|
||||
| Date gutter | Item `.period` or `.date` | Verbatim free text, including role periods. Wrap to fixed gutter; keep undated details aligned. No automatic chronological sort. The fixture itself is authored newest-first. |
|
||||
| Rich description | Item `.description`, summary `.content`, custom summary item `.content` | Preserve supported paragraphs, lists, emphasis and links. These drawings only exercise paragraphs/lists. No HTML tags printed; no arbitrary HTML discarded by proposed renderer. Unsupported-rich-text handling remains implementation work. |
|
||||
| Item website | Item `.website.url`, `.label`, `.inlineLink` | Preserve URL target; label or raw URL as display text. Inline-link preference must remain honored in future renderer. Fixture links all use `inlineLink: false`. |
|
||||
| Icons and colors | Section `.icon`; profile/skill/interest `.icon`, `.iconColor`; `metadata.page.hideIcons`, `.hideSectionIcons` | Default proposal is quiet/text-led. Fixture icons are absent or suppressed. Nondefault icon settings are not demonstrated and must be tested before implementation approval. |
|
||||
|
||||
## Built-in sections
|
||||
|
||||
Each `items[]` entry also has `id` and `hidden`; identifiers never print. A section with no visible valid
|
||||
items is omitted with its heading and rule. The table lists every content field, including blank optional fields.
|
||||
|
||||
| Proposed section | Paths under `sections.<type>.items[]` | Presentation / fixture coverage |
|
||||
| --- | --- | --- |
|
||||
| Profiles | `profiles`: `network`, `username`, `website`, `icon`, `iconColor` | Network, user name, website label. Present only in overflow. Keep within section, do not duplicate in header. |
|
||||
| Work experience | `experience`: `position`, `company`, `location`, `period`, `description`, `website`, `roles[]` | Position then organization/location, period in gutter. Overflow retains overall title/tenure and both individual roles. |
|
||||
| Individual experience role | `experience.roles[]`: `id`, `position`, `period`, `description` | Role heading, independent period, description. No role hidden flag exists. Existing shared filtering excludes blank-position roles; parent visibility still applies. |
|
||||
| Education and training | `education`: `degree`, `school`, `area`, `grade`, `location`, `period`, `description`, `website` | Qualification then institution, subject, supplied grade and location. Overflow includes all optional text fields except website. Grade is not an EQF level. |
|
||||
| Projects | `projects`: `name`, `period`, `description`, `website` | Named project, date gutter, rich narrative. Overflow adds a long multi-paragraph project and an undated project with raw long URL. |
|
||||
| Language skills | `languages`: `language`, `fluency`, `level` | Show language and supplied fluency verbatim. English/Native and French/B2 (self-assessed) are synthetic user-entered strings. No conversion from `level` to fluency or CEFR. |
|
||||
| Skills | `skills`: `name`, `proficiency`, `level`, `keywords`, `icon`, `iconColor` | Show name, proficiency, comma-separated keywords. Keyword strings/order retained. Levels are intentionally hidden via existing `metadata.design.level.type: hidden`; no proficiency inferred. |
|
||||
| Awards | `awards`: `title`, `awarder`, `date`, `description`, `website` | Title, awarder, supplied date, description. Overflow only. |
|
||||
| Certifications | `certifications`: `title`, `issuer`, `date`, `description`, `website` | Title, issuer and supplied date; empty description/link omitted. Overflow only. No accreditation claim. |
|
||||
| Publications | `publications`: `title`, `publisher`, `date`, `description`, `website` | Title, publisher and supplied date. Overflow only. No DOI field invented. |
|
||||
| Volunteering | `volunteer`: `organization`, `location`, `period`, `description`, `website` | Organization, place, period and description. There is no dedicated role-title field; do not infer one. Overflow only. |
|
||||
| Interests | `interests`: `name`, `keywords`, `icon`, `iconColor` | Name and keyword text, with configured icon behavior. Overflow only. |
|
||||
| References | `references`: `name`, `position`, `phone`, `description`, `website` | Existing user-authored “Available upon request” string in overflow; no contact is invented. There is no structured reference-email field. |
|
||||
| About me | `summary.content`, `.title`, `.hidden` | Existing summary supports optional narrative. Present in both records. This is separate from experience descriptions. |
|
||||
|
||||
## Custom sections, omitted and unsupported fields
|
||||
|
||||
| Concern | Existing representation | Decision |
|
||||
| --- | --- | --- |
|
||||
| Custom typed sections | `customSections[]`: `id`, `type`, shared section fields, `items[]` matching type | Same mapping as the matching built-in type. Preserve own title and authored layout ID. All 12 built-in types are structurally available as custom types; this fixture demonstrates a custom summary, not every custom variant. |
|
||||
| Other activities | Custom `type: summary`, `items[].content` | Both records display community workshops and peer mentoring. No fabricated employer or dates. |
|
||||
| Cover letter | Custom `type: cover-letter`, `items[].recipient`, `.content` | Supported by current model but outside this CV visual proposal; fixtures contain none. A future template must preserve existing cover-letter behavior or explicitly gate selection; silently dropping a visible cover letter is not acceptable. |
|
||||
| Structured nationality, birth date/place, sex/gender, full address components, second phone/fax, driving licence | No dedicated typed fields in `basics` | Omitted from examples, not required. A user can author free text in `customFields`, but that is not a typed equivalent or automatic mapping. Never infer from names, photos, location or language. |
|
||||
| Mother-tongue boolean or multiple structured native languages | `languages[].fluency` is free text only | No separate mother-tongue group inferred from “Native.” Keep supplied text alongside language. |
|
||||
| Five CEFR dimensions: listening, reading, spoken interaction, spoken production, writing | No fields | Omit official reference matrix. A scalar `level` or single fluency text cannot populate it faithfully. |
|
||||
| Language certificate linked to particular language/dimension | General certifications exist, no structured association | Keep as separate certification if user authored one. Do not guess association. |
|
||||
| EQF/NQF/ISCED level, qualification IDs, occupation codes, business sector | No dedicated typed fields | Omit unless user explicitly wrote free text in existing description/area/custom content. No equivalence inferred from degree or grade. |
|
||||
| Attachments, signed declaration, consent block, official Europass identifiers, XML payload, verification QR | No corresponding proposed CV field | Omitted. Existing website links do not establish attached documents, signatures or official interoperability. |
|
||||
| Official branding/copyright footer | Not ResumeData | Omitted; reuse permission not established. Source attribution belongs in research note, not masquerading as official CV provenance. |
|
||||
| Notes | `metadata.notes` | Never print. Overflow contains `PRIVATE_NOTES_SENTINEL` to make accidental disclosure detectable. |
|
||||
|
||||
## Visibility, empty content and layout controls
|
||||
|
||||
Existing filtering is the behavioral baseline: skip hidden sections/items, title-backed entries without their
|
||||
required primary title, and blank-position experience roles. Those primary fields are `network`, `company`,
|
||||
`school`, `name` (projects/skills/interests/references), `language`, `title` (awards/certifications/publications)
|
||||
and `organization`. A missing optional field alone must not hide an otherwise valid item.
|
||||
|
||||
Summary visibility currently checks nonempty trimmed content, not semantic emptiness of HTML. Do not claim
|
||||
that `<p></p>` is already filtered correctly; future proposal tests must include it and settle any desired
|
||||
change separately. The fixtures use populated summaries and empty item arrays, not malformed imported data.
|
||||
|
||||
Overflow includes a hidden experience item, a hidden custom section and private notes. Their `HIDDEN_*` and
|
||||
`PRIVATE_NOTES_*` tokens must not occur in any visual artifact. One-page empty sections do not render headings.
|
||||
Separators and rules belong to visible content only. Blank date cells stay blank, never show “Present” or a dash.
|
||||
|
||||
`columns`, `keepTogether`, `startOnNewPage`, `skills.layout`, authored pages/full-width/sidebar settings,
|
||||
typography, colors, page format/margins/gaps, hyphenation and style rules already exist. The fixture explicitly
|
||||
chooses a full-width A4 page, single-column sections, ordinary flow and no style rules. It retains the valid
|
||||
existing `metadata.template: onyx` only to remain schema-compatible: importing this fixture currently selects
|
||||
Onyx, **not this proposal**. No new template ID, date-width option or stylesheet behavior is encoded.
|
||||
|
||||
## Pagination and long text proposal
|
||||
|
||||
One-page and overflow SVGs are manual, deterministic illustrations. They do not exercise `packages/pdf`.
|
||||
The three overflow drawings illustrate one authored page flowing onto physical pages, not editable per-page
|
||||
overflow settings. No fixed page count or exact future line break is promised.
|
||||
|
||||
Dates wrap inside a 128 pt reading-start gutter; detail starts remain aligned. Keep entry title with its first
|
||||
detail line, and section heading with its first item. Allow a long entry to continue across pages without
|
||||
truncation or repeated body text. In the study, the education description continues on page 2 as a complete
|
||||
two-line paragraph; a continuation label is review metadata. Page 3 carries remaining sections without shrinking
|
||||
font size to force two pages. Repeated running names/page numbers are intentional, not duplicated body content.
|
||||
|
||||
Long names, headings, free-text dates, paragraphs and URLs must wrap; do not ellipsize, parse or normalize them.
|
||||
The overflow contains an accented long name, wrapped role dates and undated project. Long unbroken URL glyphs
|
||||
need break opportunities while retaining the original link target. Future renderer tests must add a single
|
||||
entry longer than a page, bullets across breaks, manual page starts, nondefault columns and keep-together
|
||||
settings. These cases are specified here but not established by the static study.
|
||||
|
||||
## Localization, RTL, photo and accessibility review limits
|
||||
|
||||
Use `metadata.page.locale` for existing translated fallback headings; preserve user-authored text, date strings
|
||||
and titles. Do not translate content or uppercase text in languages where that harms meaning or shaping.
|
||||
The proposal's uppercase English labels are a visual choice, not a localization algorithm. Font selection and
|
||||
fallback should stay with existing PDF font registration, not be bundled into this research.
|
||||
|
||||
RTL proposal: put label/date gutter at reading start (right), mirror alignment and optional photo placement,
|
||||
keep email/URL/phone runs in their natural direction, and preserve logical source order. Current model has no
|
||||
new direction field here; reuse the existing locale/direction contract after validating it. Arabic/Hebrew shaping,
|
||||
mixed-direction punctuation, CJK glyphs and translated long headings need their own rendered fixtures before
|
||||
implementation approval. The Latin-script drawings do not prove RTL or full localization coverage.
|
||||
|
||||
No synthetic portrait was needed for the photo-free design. Before implementing the optional-photo variation,
|
||||
review a visible-photo artifact using nonprivate synthetic imagery, both cover and contain, and long names
|
||||
beside the frame. No stock/person photo or user upload was used in this package.
|
||||
|
||||
Keep semantic section labels and logical extraction order even if visual arrangement changes. Tagged PDF,
|
||||
screen-reader behavior, contrast under user colors and link semantics require Plan 31 coordination and real
|
||||
export checks. Plain SVG text readability does not establish document accessibility conformance.
|
||||
@@ -0,0 +1,768 @@
|
||||
{
|
||||
"onePage": {
|
||||
"picture": {
|
||||
"hidden": true,
|
||||
"fit": "cover",
|
||||
"url": "",
|
||||
"size": 80,
|
||||
"rotation": 0,
|
||||
"aspectRatio": 1,
|
||||
"borderRadius": 0,
|
||||
"borderColor": "rgba(0, 0, 0, 0.5)",
|
||||
"borderWidth": 0,
|
||||
"shadowColor": "rgba(0, 0, 0, 0.5)",
|
||||
"shadowWidth": 0
|
||||
},
|
||||
"basics": {
|
||||
"name": "Alex Marin",
|
||||
"headline": "Research coordinator",
|
||||
"email": "alex.marin@example.invalid",
|
||||
"phone": "",
|
||||
"location": "Brussels, Belgium",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": ""
|
||||
},
|
||||
"customFields": []
|
||||
},
|
||||
"summary": {
|
||||
"title": "About me",
|
||||
"icon": "article",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"content": "<p>Research coordinator building clear public-service guidance.</p>"
|
||||
},
|
||||
"sections": {
|
||||
"profiles": {
|
||||
"title": "",
|
||||
"icon": "messenger-logo",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"experience": {
|
||||
"title": "Work experience",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "exp-1",
|
||||
"hidden": false,
|
||||
"company": "Civic Atlas Lab",
|
||||
"position": "Research coordinator",
|
||||
"location": "Brussels, Belgium",
|
||||
"period": "2023 – Present",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<ul><li>Coordinated multilingual guidance reviews.</li><li>Published accessible research summaries.</li></ul>",
|
||||
"roles": []
|
||||
}
|
||||
]
|
||||
},
|
||||
"education": {
|
||||
"title": "Education and training",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "edu-1",
|
||||
"hidden": false,
|
||||
"school": "Northbridge Institute",
|
||||
"degree": "BA Social Research",
|
||||
"area": "Public policy",
|
||||
"grade": "",
|
||||
"location": "",
|
||||
"period": "2019 – 2022",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"projects": {
|
||||
"title": "Projects",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "project-1",
|
||||
"hidden": false,
|
||||
"name": "Open Guidance Map",
|
||||
"period": "2025",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Mapped public learning resources.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
"skills": {
|
||||
"title": "Skills",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "skill-1",
|
||||
"hidden": false,
|
||||
"icon": "",
|
||||
"iconColor": "",
|
||||
"name": "Research",
|
||||
"proficiency": "Advanced",
|
||||
"level": 0,
|
||||
"keywords": ["Interviews", "synthesis", "documentation"]
|
||||
}
|
||||
],
|
||||
"layout": "default"
|
||||
},
|
||||
"languages": {
|
||||
"title": "Language skills",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "lang-1",
|
||||
"hidden": false,
|
||||
"language": "English",
|
||||
"fluency": "Native",
|
||||
"level": 0
|
||||
},
|
||||
{
|
||||
"id": "lang-2",
|
||||
"hidden": false,
|
||||
"language": "French",
|
||||
"fluency": "B2 (self-assessed)",
|
||||
"level": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"interests": {
|
||||
"title": "",
|
||||
"icon": "football",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"awards": {
|
||||
"title": "",
|
||||
"icon": "trophy",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"certifications": {
|
||||
"title": "",
|
||||
"icon": "certificate",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"publications": {
|
||||
"title": "",
|
||||
"icon": "books",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"volunteer": {
|
||||
"title": "",
|
||||
"icon": "hand-heart",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
},
|
||||
"references": {
|
||||
"title": "",
|
||||
"icon": "phone",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": []
|
||||
}
|
||||
},
|
||||
"customSections": [
|
||||
{
|
||||
"title": "Other activities",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "custom-item-1",
|
||||
"hidden": false,
|
||||
"content": "<p>Community workshops and peer mentoring.</p>"
|
||||
}
|
||||
],
|
||||
"id": "other-activities",
|
||||
"type": "summary"
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"template": "onyx",
|
||||
"layout": {
|
||||
"sidebarWidth": 35,
|
||||
"pages": [
|
||||
{
|
||||
"fullWidth": true,
|
||||
"main": ["summary", "experience", "education", "languages", "skills", "projects", "other-activities"],
|
||||
"sidebar": []
|
||||
}
|
||||
]
|
||||
},
|
||||
"page": {
|
||||
"gapX": 4,
|
||||
"gapY": 18,
|
||||
"marginX": 36,
|
||||
"marginY": 36,
|
||||
"format": "a4",
|
||||
"locale": "en-US",
|
||||
"hideLinkUnderline": false,
|
||||
"hideIcons": false,
|
||||
"hideSectionIcons": true
|
||||
},
|
||||
"design": {
|
||||
"colors": {
|
||||
"primary": "rgba(30, 85, 128, 1)",
|
||||
"text": "rgba(32, 38, 43, 1)",
|
||||
"background": "rgba(255, 255, 255, 1)"
|
||||
},
|
||||
"level": {
|
||||
"icon": "star",
|
||||
"type": "hidden"
|
||||
}
|
||||
},
|
||||
"typography": {
|
||||
"body": {
|
||||
"fontFamily": "Arial",
|
||||
"fontWeights": ["400"],
|
||||
"fontSize": 10.5,
|
||||
"lineHeight": 1.4
|
||||
},
|
||||
"heading": {
|
||||
"fontFamily": "Arial",
|
||||
"fontWeights": ["700"],
|
||||
"fontSize": 10,
|
||||
"lineHeight": 1.3
|
||||
}
|
||||
},
|
||||
"notes": "",
|
||||
"styleRules": []
|
||||
}
|
||||
},
|
||||
"overflow": {
|
||||
"picture": {
|
||||
"hidden": true,
|
||||
"fit": "cover",
|
||||
"url": "",
|
||||
"size": 80,
|
||||
"rotation": 0,
|
||||
"aspectRatio": 1,
|
||||
"borderRadius": 0,
|
||||
"borderColor": "rgba(0, 0, 0, 0.5)",
|
||||
"borderWidth": 0,
|
||||
"shadowColor": "rgba(0, 0, 0, 0.5)",
|
||||
"shadowWidth": 0
|
||||
},
|
||||
"basics": {
|
||||
"name": "Alexandra Noor Marin-López",
|
||||
"headline": "Research coordinator for multilingual public-service information",
|
||||
"email": "alex.marin@example.invalid",
|
||||
"phone": "",
|
||||
"location": "Brussels, Belgium",
|
||||
"website": {
|
||||
"url": "https://example.invalid/alexandra/research",
|
||||
"label": "Research portfolio"
|
||||
},
|
||||
"customFields": [
|
||||
{
|
||||
"id": "availability",
|
||||
"icon": "",
|
||||
"text": "Available for cross-border project work",
|
||||
"link": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"summary": {
|
||||
"title": "About me",
|
||||
"icon": "article",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"content": "<p>Research coordinator building clear public-service guidance.</p>"
|
||||
},
|
||||
"sections": {
|
||||
"profiles": {
|
||||
"title": "Profiles",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "profile-1",
|
||||
"hidden": false,
|
||||
"network": "Portfolio",
|
||||
"username": "alexandra",
|
||||
"icon": "",
|
||||
"iconColor": "",
|
||||
"website": {
|
||||
"url": "https://example.invalid/alexandra",
|
||||
"label": "Selected writing",
|
||||
"inlineLink": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"experience": {
|
||||
"title": "Work experience",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "exp-1",
|
||||
"hidden": false,
|
||||
"company": "Civic Atlas Lab",
|
||||
"position": "Research coordinator",
|
||||
"location": "Brussels, Belgium",
|
||||
"period": "2023 – Present",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Supported a distributed team producing accessible guidance for community learning programmes.</p>",
|
||||
"roles": [
|
||||
{
|
||||
"id": "role-1",
|
||||
"position": "Programme lead",
|
||||
"period": "September 2024 – Present (part-time)",
|
||||
"description": "<p>Led editorial planning across four working languages.</p>"
|
||||
},
|
||||
{
|
||||
"id": "role-2",
|
||||
"position": "Research associate",
|
||||
"period": "January 2023 – August 2024",
|
||||
"description": "<p>Built an evidence catalogue for public learning services.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "exp-2",
|
||||
"hidden": false,
|
||||
"company": "Open Learning Observatory",
|
||||
"position": "Research assistant",
|
||||
"location": "Leuven, Belgium",
|
||||
"period": "Autumn 2021 – Summer 2022",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"roles": [],
|
||||
"description": "<p>Collected public documentation and organised findings for volunteer reviewers.</p>"
|
||||
},
|
||||
{
|
||||
"id": "exp-hidden",
|
||||
"hidden": true,
|
||||
"company": "HIDDEN_ITEM_SENTINEL",
|
||||
"position": "",
|
||||
"location": "",
|
||||
"period": "",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"roles": [],
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"education": {
|
||||
"title": "Education and training",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "edu-1",
|
||||
"hidden": false,
|
||||
"school": "Northbridge Institute",
|
||||
"degree": "BA Social Research",
|
||||
"area": "Public policy",
|
||||
"grade": "Distinction",
|
||||
"location": "Leuven, Belgium",
|
||||
"period": "2019 – 2022",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Studied research methods, plain-language writing and collaborative service design.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
"projects": {
|
||||
"title": "Projects",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "project-1",
|
||||
"hidden": false,
|
||||
"name": "Open Guidance Map",
|
||||
"period": "2025",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Mapped public learning resources.</p><p>Reviewed regional catalogues with volunteers, comparing the clarity of eligibility, learning outcomes and application guidance. Each record includes an attributed source and an editorial review date.</p><p>Documented ambiguous wording without guessing the provider’s intent. Workshop participants tested revised navigation labels and contributed examples of questions that the directory should answer.</p><p>Prepared a maintenance guide so future editors can update links, preserve context and flag missing evidence. The guide separates direct source statements from editorial interpretations.</p>"
|
||||
},
|
||||
{
|
||||
"id": "project-2",
|
||||
"hidden": false,
|
||||
"name": "Undated community handbook",
|
||||
"period": "",
|
||||
"website": {
|
||||
"url": "https://example.invalid/learning/resources/community-handbook/review-notes",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Collected workshop notes without inventing a project date.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
"skills": {
|
||||
"title": "Skills",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "skill-1",
|
||||
"hidden": false,
|
||||
"icon": "",
|
||||
"iconColor": "",
|
||||
"name": "Research",
|
||||
"proficiency": "Advanced",
|
||||
"level": 0,
|
||||
"keywords": ["Interviews", "synthesis", "documentation"]
|
||||
}
|
||||
],
|
||||
"layout": "default"
|
||||
},
|
||||
"languages": {
|
||||
"title": "Language skills",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "lang-1",
|
||||
"hidden": false,
|
||||
"language": "English",
|
||||
"fluency": "Native",
|
||||
"level": 0
|
||||
},
|
||||
{
|
||||
"id": "lang-2",
|
||||
"hidden": false,
|
||||
"language": "French",
|
||||
"fluency": "B2 (self-assessed)",
|
||||
"level": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"interests": {
|
||||
"title": "Interests",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "int-1",
|
||||
"hidden": false,
|
||||
"name": "Walking",
|
||||
"icon": "",
|
||||
"iconColor": "",
|
||||
"keywords": ["Urban history", "public spaces"]
|
||||
}
|
||||
]
|
||||
},
|
||||
"awards": {
|
||||
"title": "Awards",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "award-1",
|
||||
"hidden": false,
|
||||
"title": "Community research recognition",
|
||||
"awarder": "Civic Learning Forum",
|
||||
"date": "2025",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Recognised collaborative documentation work.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
"certifications": {
|
||||
"title": "Certifications",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "cert-1",
|
||||
"hidden": false,
|
||||
"title": "Accessible writing workshop",
|
||||
"issuer": "Open Training Collective",
|
||||
"date": "2024",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"publications": {
|
||||
"title": "Publications",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "pub-1",
|
||||
"hidden": false,
|
||||
"title": "A practical guide to learning directories",
|
||||
"publisher": "Community Methods Review",
|
||||
"date": "2025",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
"volunteer": {
|
||||
"title": "Volunteering",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "vol-1",
|
||||
"hidden": false,
|
||||
"organization": "Neighbourhood Learning Circle",
|
||||
"location": "Brussels, Belgium",
|
||||
"period": "2022 – Present",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": "<p>Facilitated peer mentoring sessions.</p>"
|
||||
}
|
||||
]
|
||||
},
|
||||
"references": {
|
||||
"title": "References",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "ref-1",
|
||||
"hidden": false,
|
||||
"name": "Available upon request",
|
||||
"position": "",
|
||||
"phone": "",
|
||||
"website": {
|
||||
"url": "",
|
||||
"label": "",
|
||||
"inlineLink": false
|
||||
},
|
||||
"description": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"customSections": [
|
||||
{
|
||||
"title": "Other activities",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": false,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "custom-item-1",
|
||||
"hidden": false,
|
||||
"content": "<p>Community workshops and peer mentoring.</p>"
|
||||
}
|
||||
],
|
||||
"id": "other-activities",
|
||||
"type": "summary"
|
||||
},
|
||||
{
|
||||
"title": "HIDDEN_SECTION_SENTINEL",
|
||||
"icon": "none",
|
||||
"columns": 1,
|
||||
"hidden": true,
|
||||
"keepTogether": false,
|
||||
"startOnNewPage": false,
|
||||
"items": [
|
||||
{
|
||||
"id": "hidden-custom",
|
||||
"hidden": false,
|
||||
"content": "<p>HIDDEN_CONTENT_SENTINEL</p>"
|
||||
}
|
||||
],
|
||||
"id": "hidden-section",
|
||||
"type": "summary"
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"template": "onyx",
|
||||
"layout": {
|
||||
"sidebarWidth": 35,
|
||||
"pages": [
|
||||
{
|
||||
"fullWidth": true,
|
||||
"main": [
|
||||
"profiles",
|
||||
"summary",
|
||||
"experience",
|
||||
"education",
|
||||
"projects",
|
||||
"languages",
|
||||
"skills",
|
||||
"awards",
|
||||
"certifications",
|
||||
"publications",
|
||||
"volunteer",
|
||||
"interests",
|
||||
"references",
|
||||
"other-activities",
|
||||
"hidden-section"
|
||||
],
|
||||
"sidebar": []
|
||||
}
|
||||
]
|
||||
},
|
||||
"page": {
|
||||
"gapX": 4,
|
||||
"gapY": 18,
|
||||
"marginX": 36,
|
||||
"marginY": 36,
|
||||
"format": "a4",
|
||||
"locale": "en-US",
|
||||
"hideLinkUnderline": false,
|
||||
"hideIcons": false,
|
||||
"hideSectionIcons": true
|
||||
},
|
||||
"design": {
|
||||
"colors": {
|
||||
"primary": "rgba(30, 85, 128, 1)",
|
||||
"text": "rgba(32, 38, 43, 1)",
|
||||
"background": "rgba(255, 255, 255, 1)"
|
||||
},
|
||||
"level": {
|
||||
"icon": "star",
|
||||
"type": "hidden"
|
||||
}
|
||||
},
|
||||
"typography": {
|
||||
"body": {
|
||||
"fontFamily": "Arial",
|
||||
"fontWeights": ["400"],
|
||||
"fontSize": 10.5,
|
||||
"lineHeight": 1.4
|
||||
},
|
||||
"heading": {
|
||||
"fontFamily": "Arial",
|
||||
"fontWeights": ["700"],
|
||||
"fontSize": 10,
|
||||
"lineHeight": 1.3
|
||||
}
|
||||
},
|
||||
"notes": "PRIVATE_NOTES_SENTINEL",
|
||||
"styleRules": []
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user