{"id":47667135,"url":"https://github.com/nesalia-inc/core","last_synced_at":"2026-04-02T12:01:32.114Z","repository":{"id":342063379,"uuid":"1172438730","full_name":"nesalia-inc/core","owner":"nesalia-inc","description":"Zero-dependency monads for bulletproof TypeScript applications","archived":false,"fork":false,"pushed_at":"2026-03-26T15:12:33.000Z","size":38797,"stargazers_count":0,"open_issues_count":30,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-27T05:05:21.558Z","etag":null,"topics":["error-handling","functional-programming","maybe","monad","outcome","result","typescript"],"latest_commit_sha":null,"homepage":"https://core.deessejs.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nesalia-inc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-04T10:04:29.000Z","updated_at":"2026-03-26T15:14:24.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/nesalia-inc/core","commit_stats":null,"previous_names":["nesalia-inc/core"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/nesalia-inc/core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nesalia-inc%2Fcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nesalia-inc%2Fcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nesalia-inc%2Fcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nesalia-inc%2Fcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nesalia-inc","download_url":"https://codeload.github.com/nesalia-inc/core/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nesalia-inc%2Fcore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31305971,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T09:48:21.550Z","status":"ssl_error","status_checked_at":"2026-04-02T09:48:19.196Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["error-handling","functional-programming","maybe","monad","outcome","result","typescript"],"created_at":"2026-04-02T12:01:00.873Z","updated_at":"2026-04-02T12:01:32.076Z","avatar_url":"https://github.com/nesalia-inc.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"public/icon.jpg\"\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"public/icon.jpg\"\u003e\n    \u003cimg src=\"public/icon.png\" alt=\"Nesalia Logo\" width=\"100%\"\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003e@deessejs/core\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.npmjs.com/package/@deessejs/core\"\u003e\n    \u003cimg src=\"https://img.shields.io/npm/v/@deessejs/core\" alt=\"npm Version\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.npmjs.com/package/@deessejs/core\"\u003e\n    \u003cimg src=\"https://img.shields.io/bundlejs/size/@deessejs/core\" alt=\"Bundle Size\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/nesalia-inc/core/actions\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/nesalia-inc/core/ci?label=tests\" alt=\"Tests\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/nesalia-inc/core/actions\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/coverage-100%25-brightgreen\" alt=\"Coverage\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/nesalia-inc/core/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/nesalia-inc/core\" alt=\"License\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003e Functional programming patterns for TypeScript.\n\n## Packages\n\n| Package | Description | Version |\n|---------|-------------|---------|\n| `@deessejs/core` | Functional programming patterns | [![](https://img.shields.io/npm/v/@deessejs/core)](https://www.npmjs.com/package/@deessejs/core) |\n\n## Requirements\n\n- TypeScript 5.0+\n- Node.js 20+\n\n## Installation\n\n```bash\n# Install core\nnpm install @deessejs/core\n\n# Or using pnpm\npnpm add @deessejs/core\n\n# Or using yarn\nyarn add @deessejs/core\n```\n\n## Documentation\n\nFor full documentation, visit [core.deessejs.com](https://core.deessejs.com).\n\n## Quick Start\n\n```typescript\nimport { ok, err, isOk, isErr, Result } from '@deessejs/core'\n\n// Ok - Normal Operation Result\nconst ok = ok({ id: 1, name: 'John' })\n\nif (isOk(ok)) {\n  console.log(ok.value.name)\n}\n\n// Err - Domain Errors\nconst notFound = err({\n  name: 'NOT_FOUND',\n  message: 'User not found',\n  data: { id: 123 }\n})\n```\n\n## Maybe Type\n\nThe `Maybe` type represents optional values - a value that may or may not be present. It's a safer alternative to `null`/`undefined`.\n\n### Types\n\n| Type | Description |\n|------|-------------|\n| `Maybe\u003cT\u003e` | Union of `Some\u003cT\u003e` or `None` |\n| `Some\u003cT\u003e` | A present value (`{ ok: true, value: T }`) |\n| `None` | An absent value (`{ ok: false }`) |\n\n### Functions\n\n```typescript\nimport {\n  some, none,\n  fromNullable, isSome, isNone,\n  map, flatMap, getOrElse, getOrCompute,\n  tap, match, toNullable, toUndefined\n} from '@deessejs/core'\n\n// Creation\nconst present = some(42)           // Some\u003cnumber\u003e\nconst absent = none()              // None\n\n// From nullable\nconst value1 = fromNullable(42)    // Some\u003cnumber\u003e\nconst value2 = fromNullable(null)  // None\nconst value3 = fromNullable(0)     // Some\u003cnumber\u003e (0 is a valid value)\n\n// Type guards\nisSome(present)   // true\nisNone(absent)    // true\n\n// Transform\nmap(present, x =\u003e x * 2)           // Some\u003c84\u003e\nflatMap(present, x =\u003e some(x * 2)) // Some\u003c84\u003e\nflatMap(absent, x =\u003e some(x * 2))  // None\n\n// Extract\ngetOrElse(present, 0)              // 42\ngetOrElse(absent, 0)               // 0\n\n// Side effects\ntap(present, console.log)           // logs 42, returns Some\u003c42\u003e\nmatch(present, v =\u003e v * 2, () =\u003e 0) // 84\nmatch(absent, v =\u003e v * 2, () =\u003e 0)  // 0\n\n// Convert back\ntoNullable(present)  // 42\ntoNullable(absent)  // null\ntoUndefined(present) // 42\ntoUndefined(absent)  // undefined\n```\n\n## Development\n\n```bash\n# Install dependencies\npnpm install\n\n# Build all packages\npnpm build\n\n# Run tests\npnpm test\n\n# Run tests with coverage\npnpm test:coverage\n\n# Lint\npnpm lint\n\n# Type check\npnpm typecheck\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## Author\n\n- **Nesalia Inc.**\n\n## Security\n\nIf you discover any security vulnerabilities, please send an e-mail to security@nesalia.com.\n\n## License\n\nMIT License - see the [LICENSE](LICENSE) file for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnesalia-inc%2Fcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnesalia-inc%2Fcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnesalia-inc%2Fcore/lists"}