{"id":22564189,"url":"https://github.com/fookiejs/server","last_synced_at":"2026-04-30T00:31:24.062Z","repository":{"id":57239958,"uuid":"448876834","full_name":"fookiejs/server","owner":"fookiejs","description":"Fookie JS Http server plugin","archived":false,"fork":false,"pushed_at":"2023-03-31T00:57:59.000Z","size":158,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-03-22T03:34:39.896Z","etag":null,"topics":["fastify","http"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fookiejs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-01-17T12:03:32.000Z","updated_at":"2023-03-31T00:31:27.000Z","dependencies_parsed_at":"2022-08-30T00:11:32.634Z","dependency_job_id":null,"html_url":"https://github.com/fookiejs/server","commit_stats":null,"previous_names":["fookiejs/fookie-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fookiejs%2Fserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fookiejs%2Fserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fookiejs%2Fserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fookiejs%2Fserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fookiejs","download_url":"https://codeload.github.com/fookiejs/server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246034307,"owners_count":20712857,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fastify","http"],"created_at":"2024-12-07T23:14:24.735Z","updated_at":"2026-04-30T00:31:24.057Z","avatar_url":"https://github.com/fookiejs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Fookie\n\nFookie is the Go runtime and query engine behind the Fookie ecosystem.  \nYou define data models and behavior with FQL, and Fookie serves a GraphQL API, runs migrations, and executes background jobs.\n\nThis repository is currently in an early stage (alpha) and is evolving quickly. Core workflows (schema, migrate, serve, jobs, Docker stack) are usable, while APIs and ergonomics may still change.\n\n## Quick Start (Docker-first)\n\nPrerequisites:\n- Docker + Docker Compose\n\nFrom the repository root:\n\n```bash\ndocker compose up -d\n```\n\nThen open:\n- GraphQL (GraphiQL): `http://localhost:8080/graphql`\n- Grafana: `http://localhost:3000`\n\n## Quick Start (CLI)\n\nPrerequisites:\n- Go `\u003e= 1.25`\n- PostgreSQL\n\nInstall CLI tools:\n\n```bash\ngo install github.com/fookiejs/fookie/cmd/fookie@latest\ngo install github.com/fookiejs/fookie/cmd/server@latest\n```\n\nCheck environment:\n\n```bash\nfookie doctor\n```\n\nPlan and apply migrations:\n\n```bash\nfookie migrate plan --schema schema.fql --db \"$DB_URL\"\nfookie migrate apply --schema schema.fql --db \"$DB_URL\"\n```\n\nStart the server:\n\n```bash\nfookie serve --schema schema.fql --db \"$DB_URL\" --port :8080\n```\n\n## FQL in 60 Seconds\n\n```fql\nmodel User {\n  fields {\n    name  string\n    email string --unique\n    role  string\n  }\n\n  create {}\n  read   {}\n  update {}\n  delete {}\n}\n```\n\nWith a schema like this, Fookie generates GraphQL CRUD operations and migration-ready database structure from the model definition.\n\n## Core Capabilities\n\n- FQL-based schema/model definition\n- GraphQL endpoint with generated operations\n- Migration planning and apply workflow (`fookie migrate`)\n- Dead-letter queue tooling (`fookie dlq list|retry|retry-all|purge`)\n- Background/external job execution pattern (outbox-style)\n- Built-in observability stack (Prometheus, Loki, Tempo, Grafana)\n- Kubernetes deployment support via Helm chart\n\n## Repository Map\n\n- `pkg/` - core engine packages (parser, compiler, runtime, schema, telemetry, etc.)\n- `cmd/` - executable entrypoints (`fookie`, `server`, `worker`, `parser`)\n- `charts/fookie/` - Helm chart for Kubernetes deployment\n- `deploy/compose/` - compose fragments and platform deployment configs\n- `docs/` - project docs (quick start, roadmap, platform notes)\n- `tools/fql-language/` - FQL language tooling/editor support\n- `packages/` - JavaScript/TypeScript packages (`fookie-js`, worker SDK, types)\n- `tests/` - unit and integration tests\n\n## Documentation\n\n- [Getting started](docs/getting-started.md)\n- [Ecosystem roadmap](docs/ecosystem-roadmap.md)\n- [Grafana dashboard setup](docs/grafana-hub.md)\n- [Platform launcher notes](docs/platform-launcher.md)\n\n## Roadmap Snapshot\n\nNow:\n- Stabilize core parser/compiler/runtime flow\n- Improve onboarding and production-readiness docs\n\nNext:\n- Strengthen CRUD and relational workflows\n- Expand test coverage for parser/compiler/runtime paths\n\nLater:\n- Broader ecosystem integrations and developer tooling maturity\n\n## Contributing\n\nLocal checks commonly used in this repo:\n\n```bash\nmake test\nmake test-unit\nmake test-integration\nnpm run lint\nnpm run test\n```\n\nIf you want to contribute, open an issue describing the problem/proposal first, then submit a focused PR with tests where applicable.\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffookiejs%2Fserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffookiejs%2Fserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffookiejs%2Fserver/lists"}