Skip to content
View davidwickerhf's full-sized avatar
🏠
Working from home
🏠
Working from home

Block or report davidwickerhf

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
davidwickerhf/README.md
David Wicker — developer and researcher in Maastricht, the Netherlands. Animated network artwork.

Portfolio ↗   /   Selected work   /   Research code   /   Datasets   /   Beyond software   /   Get in touch ↗

I'm David.

Full-stack developer and researcher in Maastricht, the Netherlands. I build software for working with complex information: court decisions, Armenian texts, and personal knowledge.

At the Brightlands Institute for Smart Society, I work on legal research infrastructure with the Maastricht research and engineering teams. Independently, I design and build language-learning tools, knowledge systems, and client websites.

CV Research LinkedIn

Selected work

01 — Case Law Explorer. From legal corpora to citations and discovery. Explore the architecture.

Research software connecting Dutch and European case law through search and citation networks. I contribute across ingestion, data normalization, APIs, authentication, the research interface, and deployment.

Python · Airflow · PostgreSQL · SvelteKit · Docker

Inside the system — from court records to a research workspace

Rechtspraak, HUDOC, and CELLAR enter through separate ingestion paths and converge on a shared legal-data model. Source-specific records and citation relationships remain traceable. The work is part of a wider BISS and Maastricht research programme.

flowchart LR
  A[Rechtspraak] --> D[Ingest & normalize]
  B[HUDOC] --> D
  C[CELLAR] --> D
  D --> E[(PostgreSQL)]
  E --> F[Search & citation APIs]
  F --> G[Research workspace]
Loading

Read the architecture · Explore the ingestion code


02 — Hayeren. Eastern Armenian: read, understand, remember. Explore the architecture.

An Eastern Armenian learning platform, shaped by my own experience learning the language. A graded course, grammar, a dictionary that recognizes inflected words, reading, spaced repetition, and shared notebooks all draw on the same language data.

TypeScript · React · Neon Postgres · Liveblocks · Yjs

Inside the system — one word, across every learning surface

A word encountered in a text resolves to a stable dictionary entry. That same record supports lookup, study, and review. Shared packages hold the language and learning logic; Postgres preserves learner progress and notes.

flowchart LR
  A[Word in a text] --> B[Dictionary entry]
  B --> C[Reader]
  B --> D[Course & grammar]
  B --> E[Spaced repetition]
  C --> F[(Progress & notes)]
  D --> F
  E --> F
Loading

Read the architecture · Try Hayeren


03 — Commonfold. Personal knowledge: capture, review, recall. Explore the architecture.

A private knowledge system in active development. AI proposes changes for review and answers questions with links to their sources. Notes support collaborative editing, version history, and portable Markdown export.

Next.js · PostgreSQL / pgvector · Claude · TipTap · Yjs

Inside the system — review what enters, trace what comes back

Capture starts with a proposal. After review, the note becomes part of a Postgres archive. Keyword and semantic retrieval supply evidence for answers; version history and Markdown export keep the archive recoverable.

flowchart LR
  A[Thought or source] --> B[Proposed change]
  B --> C[Human review]
  C --> D[(Note archive)]
  D --> E[Retrieval]
  E --> F[Answer with sources]
  D --> G[Markdown export]
Loading

Read the architecture · Visit Commonfold

Research contributions

  • cellar-extractor — EU case-law extraction, multilingual full text, and citation relationships from CELLAR and EUR-Lex.
  • echr-extractor — European Court of Human Rights data from HUDOC, including full text, legal sections, and citation networks.
  • ECtHR citation rankings — Code, data, and reproducible analyses for my research on how network centrality relates to the importance of court judgments.

The extraction libraries are developed with the Maastricht Law & Tech Lab.

Datasets

Legal data I publish on Hugging Face:

Dataset Contents
CJEU / CELLAR EU case-law metadata, multilingual full text, and citation links.
Rechtspraak OpenData Raw Dutch court-data snapshots and pipeline export archives.
ECLI → BWB references Links between Dutch court decisions and the legislation they cite.
ECHR · coming soon European Court of Human Rights case law.

More projects and architecture notes ↗

Beyond software

I photograph places and everyday life, study Eastern Armenian, and work on educational access for students affected by conflict. Earlier chapters include UWC Dilijan in Armenia and climate organising in Turin.

Photography · Humanitarian work · Earlier work


Have a difficult system to make usable? Let's talk ↗

Original artwork, rendered from code. Still version · How this README works

Pinned Loading

  1. instaclient instaclient Public

    instaclient is a Python library for accessing Instagram's features. With this library, you can create Instagram Bots with ease and simplicity. The InstaClient takes advantage of the selenium librar…

    Python 56 9

  2. stappato stappato Public

    Website coded in SvelteKit for an Italian restaurant in Maastricht

    Svelte 2

  3. wickerlife/checkers wickerlife/checkers Public

    A 3D checkers game coded in NextJS and Three.js

    TypeScript 4

  4. exam-study-platform exam-study-platform Public

    Self-hosted study platform for the BCS June 2026 resit window. Markdown notes + AI question banks + practice-exam grading for 5 courses.

    C 2

  5. maastrichtlawtech/echr-extractor maastrichtlawtech/echr-extractor Public

    Python 12 1

  6. maastrichtlawtech/cellar-extractor maastrichtlawtech/cellar-extractor Public

    Python 8 1