Skip to content

agliardi-io/apps

 
 

Repository files navigation

Deco Standard Apps Library

The Deco Framework logo: A capybara in its natural habitat

Welcome to the deco-cx/apps repository! This repository is home to a collection of powerful apps that can be seamlessly integrated into your deco sites. Here, we provide you with a brief overview of the deco framework and introduce the concept of apps. We'll also delve into the repository structure, how to contribute, and more. Read more about apps in the docs, also if you want to see apps in action check our storefront repository.

About the deco Framework

Deco, formerly known as live, is a modern and versatile framework that empowers developers to build dynamic and interactive websites with ease. Apps are a fundamental component of deco, offering a way to bundle sets of blocks together, all configured through an intuitive UI and sharing a common state defined within the app module.

Repository Structure

The deco-cx/apps repository is structured as a monorepo, housing a collection of individual apps, each stored in a dedicated subfolder. These apps can be installed separately, providing you with the flexibility to choose and integrate only the functionalities that suit your project's needs.

The deco.ts file serves as a hub where you can specify the apps of this repository. However it is important to notice that whether you choose to create apps within this repository or within your own organization's repository, there are no limitations on where apps should be developed.

Overview

At the core of all websites within this repository is the website app, located in the website folder. This app lays the foundation for websites, offering a set of common features that are essential regardless of whether your site is an e-commerce platform or not. We've also structured the repository to accommodate specific platforms, such as e-commerce platforms like VTEX, Shopify, VNDA, and more. These platform-specific apps depend on the website app, leveraging its shared features while adding platform-specific functionality.

Contributing

Contributions to the deco-cx/apps repository are highly encouraged! We maintain an open and collaborative environment where community members are valued and respected. When contributing, please follow our contribution guidelines and treat others with kindness and professionalism. Our review process ensures high-quality contributions that align with the repository's goals.

We adhere to semantic versioning, and all apps within this repository are versioned collectively using git tags. To release a new version, simply fork the repository, open a pull request, and once approved, request any maintainer to run deno task release. There are no strict rules about release frequency, so you can release updates as soon as your changes are merged into the main branch.

Developing a new app

Just run:

deno task new `APP_NAME` && deno task start

The app folder and the deco.ts will be changed in order to support your newly created app.

Then you can run the watcher in a site that you own,

deno task watcher $SITE_NAME

Transition from deco-sites/std to deco-cx/apps

This repository isn't a deco site as it used to be in deco-sites/std. In the past, we used deco-sites/std as a central hub for various platform integrations. Now, we've modularized these integrations into smaller, installable, and composable apps. These apps now reside in the deco-cx/apps repository. Additionally, the /compat folder contains two apps, $live and deco-sites/std, which serve as drop-in replacements for the older apps that contained all blocks together. As users progressively adopt the new apps, they can take full advantage of app extensibility and enhance their websites' capabilities.

We're excited to have you as part of the Deco community and look forward to seeing the incredible apps and websites you'll create using the deco-cx/apps repository. Happy coding!

For more information, check out our documentation at https://deco.cx/docs.

Apps

App Name Description Manifest
WebSite The base app of any website. Contains Page.tsx block and other common loaders like image and fonts. manifest
VTEX The app for e-commerce that uses VTEX as a platform. manifest
Shopify The app for e-commerce that uses Shopify as a platform. manifest
VNDA The app for e-commerce that uses VNDA as a platform. manifest
Workflows Provides a simple set of loaders and actions to manage workflows manifest
Commerce A simple configurable start for any e-commerce platform, lets you switch between any of those manifest
$live An app for compatibility with $live blocks manifest
deco-sites/std An app for compatibility with deco-sites/std app, contains various blocks merged from e-commerce apps. manifest
decohub The best place to find an app for your business case, here is where apps published by any developer in the deco ecosystem will live. manifest
handlebars An app that allows you to build your own sections using handlebars. manifest
Verified Reviews An app that uses extension block to add Aggregate Rating to products by integrating with the "Opiniões Verificadas" provider. manifest
Algolia Algolia search integration. Provides loaders and workflows for searching and indexing on Algolia manifest
Typesense Typesense search integration. Provides loaders and workflows for searching and indexing on Typesense manifest

Adding a new app to Deco Hub

In order to make your app available to be installable in any deco site, just import/export your app inside decohub/apps folder.

Thanks to all contributors

About

App definitions by deco.cx

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 100.0%