diff --git a/.github/ISSUE_TEMPLATE/Bug_report.md b/.github/ISSUE_TEMPLATE/Bug_report.md new file mode 100644 index 00000000..bda0fc4f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/Bug_report.md @@ -0,0 +1,35 @@ +--- +name: Bug report +about: Help us improve Unified InstantSearch for Ecommerce +--- + +## 🐛 Bug description + + + +## 🔍 Bug reproduction + +**Steps to reproduce the behavior:** + +1. Go to `...` +2. Click on `...` +3. Scroll down to `...` +4. See error + +## 💭 Expected behavior + + + +## 🖥 Screenshots + + + +## Environment + +- OS: [e.g. Windows / Linux / macOS / iOS / Android] +- Browser: [e.g. Chrome, Safari] +- Version: [e.g. 22] + +## Additional context + + \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..30ccb57f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: false +contact_links: + - name: Feature Request + url: https://github.com/algolia/unified-instantsearch-ecommerce/issues/new?title=Feature%20request%3A + about: Request a feature to add to Unified InstantSearch. + - name: Ask a Question + url: https://github.com/algolia/unified-instantsearch-ecommerce/issues/new + about: Ask questions and discuss with other community members. diff --git a/.github/unified-instantsearch-ecommerce.png b/.github/unified-instantsearch-ecommerce.png index 90e3aee1..c30539c8 100644 Binary files a/.github/unified-instantsearch-ecommerce.png and b/.github/unified-instantsearch-ecommerce.png differ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..4d5abfbf --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,86 @@ +# Contributing to Unified InstantSearch for Ecommerce + +Welcome to the contributing guide for Unified InstantSearch for Ecommerce! + +If this guide does not contain what you are looking for and thus prevents you from contributing, don't hesitate to [let us know](https://github.com/algolia/unified-instantsearch-ecommerce/issues/new). + +## Reporting an issue + +Opening an issue is very effective way to contribute because many users might also be impacted. We'll make sure to fix it quickly if it's technically feasible and doesn't have important side effects for other users. + +Before reporting an issue, first check that there is not an already open issue for the same topic using the [issues page](https://github.com/algolia/unified-instantsearch-ecommerce/issues). Don't hesitate to thumb up an issue that corresponds to the problem you have. + +Another element that will help us go faster at solving the issue is to provide a reproducible test case. + +## Code contribution + +For any code contribution, you need to: + +- Make sure that the code change has been discussed in [Issues](https://github.com/algolia/unified-instantsearch-ecommerce/issues) +- Fork and clone the project +- Create a new branch for what you want to solve ("fix/issue-number", "feat/name-of-the-feature") +- Make your changes +- Open a pull request + +Then: + +- A team member will review the pull request + +When every check is green and a team member approves, your contribution is merged! 🚀 + +## Commit conventions + +This project follows the [conventional changelog](https://conventionalcommits.org/) approach. This means that all commit messages should be formatted using the following scheme: + +``` +type(scope): description +``` + +This convention is used to generate the [changelog](https://github.com/algolia/unified-instantsearch-ecommerce/tree/master/CHANGELOG.md). + +In most cases, we use the following types: + +- `fix`: for any resolution of an issue (identified or not) +- `feat`: for any new feature +- `refactor`: for any code change that neither adds a feature nor fixes an issue +- `docs`: for any documentation change or addition +- `chore`: for anything that is not related to the library itself (e.g., doc, tooling) + +Even though the scope is optional, we try to fill it in as it helps us better understand the impact of a change. + +Finally, if your work is based on an issue on GitHub, please add in the body of the commit message "Closes #1234" if it solves the issue #1234 (read "[Closing issues using keywords](https://help.github.com/en/articles/closing-issues-using-keywords)"). + +Some examples of valid commit messages (used as first lines): + +> - fix(js): increase magnifying glass size +> - feat(core): add `enterKeyHint` input prop +> - refactor(core): inline `navigator` default prop +> - docs(state): add `query` state property +> - docs(readme): add "Showcase" section +> - chore(deps): update dependency rollup-plugin-babel to v3.0.7 + +## Installation + +### Requirements + +To run this project, you will need: + +- Node.js ([nvm](https://github.com/creationix/nvm#install-script) is recommended) +- [Yarn](https://yarnpkg.com) + +### Launch the dev environment + +```sh +yarn +yarn start +``` + +Go to http://localhost:3000 to open the app. You should see a website with a search bar in the top-right corner. + +## Release + +```sh +yarn run release +``` + +It will create a pull request for the next release. When it's reviewed, approved and merged, then CircleCI will automatically publish the packages to npm. \ No newline at end of file diff --git a/README.md b/README.md index 3bfc4f27..c4e2fef4 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,60 @@ -# Unified InstantSearch E-Commerce +
+

Unified InstantSearch for Ecommerce

+

A ready-to-use, fully functional Search & Discovery UI on top of InstantSearch

+
-

-Unified InstantSearch E-Commerce -

+--- -**This project aims to be used by any e-commerce website to bootstrap a search experience powered by Algolia the fastest way possible.** +Build your Ecommerce Search & Discovery experience in no time using this framework-agnostic prebuilt UI that offers out-of-the-box a robust as-you-type InstantSearch experience, while retaining the customizability of [Algolia InstantSearch](https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/js/). -While you would still have to push your data to Algolia, the goal of Unified InstantSearch E-Commerce is to remove the need to implement front-end logic and be able to start using Algolia as quickly as possible. +Designed to accelerate your Algolia integration, this mobile-optimised UI has been created to best fit any website UI via its full page overlay and offers a direct access to the following Algolia key features: + +- Typo proof as-you-type InstantSearch experience +- Query Suggestions +- Advanced Analytics with A/B testing +- Dynamic Re-ranking +- Personalization +- Merchandising capabilities, including banners via Rules + +On the frontend side, once compiled, the total package weighs under 300kb and runs on any existing website, regardless of the framework used (see [Browser support](#browser-support)). Its impact on Core Vitals is almost transparent. + +#### [**See Live Demo ↗**](https://unified-instantsearch-ecommerce.netlify.app) + + + Unified InstantSearch for Ecommerce + ## Documentation -To get started with Unified InstantSearch E-Commerce, head over to the [wiki](https://github.com/algolia/unified-instantsearch-ecommerce/wiki). +The [documentation](https://www.algolia.com/doc/guides/building-search-ui/resources/unified-instantsearch/react/) offers a few ways to learn about Unified InstantSearch for Ecommerce: + +- Read the [Getting Started](https://www.algolia.com/doc/guides/building-search-ui/resources/unified-instantsearch/tutorials/getting-started/react/) tutorial to setup your local version of Unified InstantSearch and integrate it into your website +- Find out how to [Use Your Own Data](https://www.algolia.com/doc/guides/building-search-ui/resources/unified-instantsearch/tutorials/using-your-own-data/react/) by formatting it specifically for Unified InstantSearch and pushing it to Algolia +- Learn how to [Customize the UI](https://www.algolia.com/doc/guides/building-search-ui/resources/unified-instantsearch/tutorials/customizing-your-ui/react/) to make it blend with your website's branding +- Setup advanced [Merchandising and Rules](https://www.algolia.com/doc/guides/building-search-ui/resources/unified-instantsearch/tutorials/merchandising-and-rules/react/) to promote items and add banners + +You can also go to the wiki to access the full [Configuration options](https://github.com/algolia/unified-instantsearch-ecommerce/wiki/Configuration-options) reference. ## Disclaimer -> Unified InstantSearch E-Commerce is made accessible to you for trial and experimentation purposes. You may decide to use it or not. You are aware that the use of Unified InstantSearch E-Commerce in production may increase your consumption of the Service, including [Queries Per Second](https://www.algolia.com/doc/faq/monitoring/which-queries-are-counted-as-part-of-the-max-qps-computations/). +> Unified InstantSearch for Ecommerce is made accessible to you for trial and experimentation purposes. You may decide to use it or not. You are aware that the use of Unified InstantSearch for Ecommerce in production may increase your consumption of the Service, including [Queries Per Second](https://www.algolia.com/doc/faq/monitoring/which-queries-are-counted-as-part-of-the-max-qps-computations/). +> +> Unified InstantSearch for Ecommerce source code is provided "as is" and "as available" without any support or warranty of any kind. For purposes of our [SLA](https://www.algolia.com/policies/sla), the Unified InstantSearch for Ecommerce is not an "API Client". + +## Browser support + +Unified InstantSearch for Ecommerce supports the **last two versions of the major browsers** (Chrome, Edge, Firefox, Safari) as well as Internet Explorer 11. + +## How to contribute + +We welcome all contributors, from casual to regular :blue_heart:. See [CONTRIBUTING](CONTRIBUTING.md) for more information about the contribution process. + +- **Bug report**. Is something not working as expected? [Send a bug report](https://github.com/algolia/unified-instantsearch-ecommerce/issues/new?template=Bug_report.md). +- **Feature request.** Would you like to add something? [Send a feature request](https://github.com/algolia/unified-instantsearch-ecommerce/issues/new?title=Feature%20request%3A). +- **Documentation.** Did you find a typo in the doc? [Open an issue](https://github.com/algolia/unified-instantsearch-ecommerce/issues/new). + +See [Installation](CONTRIBUTING.md#installation) for instructions on how to install the project. -> Algolia does not support Unified InstantSearch E-Commerce, and may discontinue it at any time at its sole discretion; configurations and customizations entered by you into Unified InstantSearch E-Commerce may be permanently lost. Any feedback (including source code) you may provide to us regarding Unified InstantSearch E-Commerce may be used by Algolia to improve the Service. +## License -> Unified InstantSearch E-Commerce source code is provided "as is" and "as available" without any warranty of any kind. Algolia disclaims all obligation and liability for any harm or damage arising out of or in connection with Unified InstantSearch E-Commerce. For purposes of our [SLA](https://www.algolia.com/policies/sla), the Unified InstantSearch E-Commerce is not an "API Client". +Unified InstantSearch for Ecommerce is [Apache-2.0 licensed](LICENSE).