{"id":18627193,"url":"https://github.com/markshust/falcon","last_synced_at":"2025-09-09T04:40:45.666Z","repository":{"id":142878387,"uuid":"151576000","full_name":"markshust/falcon","owner":"markshust","description":"Deity Falcon - An Open Source, platform agnostic, headless PWA front-end library","archived":false,"fork":false,"pushed_at":"2018-10-04T13:20:46.000Z","size":1112,"stargazers_count":2,"open_issues_count":0,"forks_count":67,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-08T10:48:51.854Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://deity.io","language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"osl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/markshust.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-04T13:27:54.000Z","updated_at":"2023-05-04T13:53:09.000Z","dependencies_parsed_at":"2023-03-17T13:30:44.005Z","dependency_job_id":null,"html_url":"https://github.com/markshust/falcon","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/markshust/falcon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markshust%2Ffalcon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markshust%2Ffalcon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markshust%2Ffalcon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markshust%2Ffalcon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markshust","download_url":"https://codeload.github.com/markshust/falcon/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markshust%2Ffalcon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274244222,"owners_count":25248157,"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","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-11-07T04:41:04.772Z","updated_at":"2025-09-09T04:40:45.647Z","avatar_url":"https://github.com/markshust.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DEITY FALCON\r\n\r\n[![Build Status](https://travis-ci.org/deity-io/falcon.svg?branch=master)](https://travis-ci.org/deity-io/falcon)\r\n[![License: OSL-3.0](https://img.shields.io/badge/license-OSL--3.0-yellow.svg?style=flat-square)](https://opensource.org/licenses/OSL-3.0)\r\n[![Blazing Fast](https://img.shields.io/badge/speed-blazing%20%F0%9F%94%A5-brightgreen.svg?style=flat-square)](https://twitter.com/acdlite/status/974390255393505280)\r\n[![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg?style=flat-square)](https://lernajs.io/)\r\n[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)\r\n\r\n\u003cp align=\"center\"\u003e\r\n  \u003cimg alight=\"center\" width=\"100\" src=\"https://user-images.githubusercontent.com/1118933/46464650-2f40df00-c7c7-11e8-827c-576ce330cb06.png\" /\u003e\r\n\u003c/p\u003e\r\n\r\n## Introduction\r\n\r\nDEITY Falcon is a platform agnostic PWA, stand-alone but modular library to be used with any e-commerce platform.\r\n\r\n#### Technologies inside\r\n\r\n- Apollo\r\n- NodeJS\r\n- Razzle\r\n- GraphQL\r\n- React\r\n- Koa\r\n- Jest (testing)\r\n\r\n#### Community\r\n\r\nAny contributions, small or big, are very welcome! Please take a look at our [Contributor guidelines](https://github.com/deity-io/falcon/blob/master/.github/CONTRIBUTING.md) and [Code of Conduct](https://github.com/deity-io/falcon/blob/master/.github/CODE_OF_CONDUCT.md)\r\n\r\nJoin the official chat channel\r\n\r\n[Deity Community Slack](http://slack.deity.io)\r\n\r\n## Requirements\r\n\r\nNodeJS (8.x +) https://nodejs.org\r\n\r\nYarn (Optional, but recommended) https://yarnpkg.com\r\n\r\n\r\nYarn can be installed via `npm install -g yarn` or https://yarnpkg.com/lang/en/docs/install\r\n\r\n## Starting a project\r\n\r\nUse the project generator:\r\n\r\n[Create-falcon-app](https://github.com/deity-io/falcon/tree/master/packages/create-falcon-app)\r\n\r\nOut of the box it will connect to a public back-end service (Magento \u0026 WordPress), so you are able to start developing right away.\r\n\r\n### Connecting to your own services\r\n\r\n#### Magento\r\n\r\nInstall falcon-magento2-module in Magento 2\r\n\r\n[falcon-magento2-module](https://github.com/deity-io/falcon-magento2-module)\r\n\r\n#### WordPress\r\n\r\nInstall falcon-wordpress-module in WordPress\r\n\r\n[falcon-wordpress-module](https://github.com/deity-io/falcon-wordpress-module)\r\n\r\n#### Other platforms\r\n\r\nComing soon\r\n\r\n#### Connecting to them\r\n\r\nInside ```server/config``` change ```apis.config``` to your instance's credentials\r\n\r\n## Customizing the theme\r\n\r\nPlease check out https://github.com/deity-io/falcon/tree/master/packages/falcon-ui\r\n\r\n## Basics\r\n\r\n### Project Structure\r\n\r\n[Falcon Client](https://github.com/deity-io/falcon/tree/master/packages/falcon-client)\r\n\r\n[Falcon Server](https://github.com/deity-io/falcon/tree/master/packages/falcon-server)\r\n\r\n## Advanced\r\n\r\nComing soon\r\n\r\n### Code Splitting\r\n\r\n### Dynamic routing\r\n\r\n### State management\r\n\r\n## Development quick start\r\n\r\nYarn and Node are required for core development\r\n\r\n#### Adding new dependency for single package\r\n\r\n```\r\ncd package-name\r\nyarn add dependency-name\r\n```\r\n\r\n#### Testing\r\n\r\nThere are 2 main scripts available - `test` and `test:coverage`:\r\n\r\n- `test` in the root package.json file - triggers `test:coverage` script in every available package (it will be used by the CI system mainly)\r\n- `test` in the module's package.json - runs Jest testing in \"watch\" mode (re-runs tests on every code change)\r\n- `test:coverage` in the module's package.json runs Jest testing with enabled Coverage option\r\n\r\n```\r\ncd package-name\r\nyarn test\r\nyarn test:coverage\r\n```\r\n\r\n#### Example how to add @deity/falcon-client dependency into examples/shop-with-blog\r\n\r\npackage version needs to be specified as it's not yet published to npm registry\r\n\r\n```\r\ncd examples/shop-with-blog\r\nyarn add @deity/falcon-client@1.0.0\r\n```\r\n\r\nImportant thing now is all those packages are linked together so changing something in `@deity/falcon-client` will be automatically reflected in `shop-with-blog` example\r\n\r\n### TODO\r\n- jest for all packages\r\n- changelog generation? - https://github.com/lerna/lerna-changelog\r\n- learna publish packages to npm script?\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkshust%2Ffalcon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkshust%2Ffalcon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkshust%2Ffalcon/lists"}