diff --git a/website/docs/core-concepts/categories.md b/website/docs/core-concepts/categories.md new file mode 100644 index 000000000..a2f246976 --- /dev/null +++ b/website/docs/core-concepts/categories.md @@ -0,0 +1,48 @@ +--- +sidebar_position: 12 +--- + +# Categories + +Categories help to group related posts. +Users can add or assign categories while creating a post. While adding a category for a post, if a category does not exist then click on Create a Category. This allows users to quickly create a new category and assign it to a post. + +Category can be added from the Categories menu item by clicking on the New Category button on the right side. + +- Name: Name of a category +- Parent Category: Select Parent category for the category +- Featured - This field can be used to highlight the Category on the website if it is enabled. +- Featured Image: Image of category +- Description: Describes what the category is for. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the category if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a category can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Categories will be available under the Categories menu. +[Search](/docs/features/search-and-filtering) and sort options are available to simplify the search for a Category. Categories can be deleted by clicking on the Delete button. To edit a Category click on the name of the category in the list. + +### Policies + +The default policies for the categories are: + +- Admin, Editor and Author have the permission to read, create, update and delete the categories. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the posts to trigger notification are: + +| Events | Description | +| --------------- | ------------------------------------ | +| Create Category | Triggered when a category is added | +| Update Category | Triggered when a category is edited | +| Delete Category | Triggered when a category is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/claimants.md b/website/docs/core-concepts/claimants.md index a889c62c7..90da81df1 100644 --- a/website/docs/core-concepts/claimants.md +++ b/website/docs/core-concepts/claimants.md @@ -4,4 +4,45 @@ sidebar_position: 4 # Claimants -## Coming Soon! +A claimant is a person who makes a claim. A claimant can be assigned to a claim while creating a claim. +The user can add a claimant from the Claimants menu item by clicking on the New Claimant button on the right side. + +- Name - Name of the claimant. +- Featured Image - Image for the claimant +- Tag Line - Tag Line of the claimant +- Featured - This field can be used to highlight the Claimant on the website if it is enabled. +- Description - Information about the claimant + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the claimant if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a claimant can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Claimants will be available under the Claimants menu. +[Search](/docs/features/search-and-filtering) and sort options are available to simplify the search for a Claimant. Claimants can be deleted by clicking on the Delete button. To edit a Claimant click on the name of the claimant in the list. + +### Policies + +The default policies for the claimants are: + +- Editor and Admin have the permission to read, create, update and delete the claimants. +- Author have the permission to read, create and update the claimants. +- Contributor have the permission to read and create the claimants. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the posts to trigger notification are: + +| Events | Description | +| --------------- | ------------------------------------ | +| Create Claimant | Triggered when a claimant is added | +| Update Claimant | Triggered when a claimant is edited | +| Delete Claimant | Triggered when a claimant is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/claims.md b/website/docs/core-concepts/claims.md index c6923880d..d083b6d3b 100644 --- a/website/docs/core-concepts/claims.md +++ b/website/docs/core-concepts/claims.md @@ -4,4 +4,51 @@ sidebar_position: 3 # Claims -## Coming Soon! \ No newline at end of file +Claims given by any claimant can be added here. These claims can be assigned to a Fact-check. The user can add a claim from the Claims menu item by clicking on the New claim button on the right side. + +Claim Settings: + +- Claim - Title of the claim. +- Fact - Facts about the claim. +- [Claimant](/docs/core-concepts/claimants) - This allows you to add the claimant who made the claim +- [Rating](/docs/core-concepts/ratings) - This allows you to rate the claim, i.e True, False, etc. +- Claim Date - Date on which the claim was made +- CheckedDate - Date on which the claim was checked by fact-checkers +- Description - Describes what the claim is for. +- Claim Sources - This allows you to add a list of claim sources. + By clicking on the Add Claim Sources button, new fields are added to add information about the claim sources. Url and description can be provided for each claim source. +- Review Sources - This allows you to add a list of review sources. + By clicking on the Add Review Sources button, new fields are added to add information about the review sources. Url and description can be provided for each review source. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the claim if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a claim can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Claims will be available under the Claims menu. +[Filter](/docs/features/search-and-filtering) and sort options are available to simplify the search for Claims. Available filters are Ratings and Claimants. Claims can be deleted by clicking on the Delete button. To edit a Claim click on the name of the claim in the list. + +### Policies + +The default policies for the claims are: + +- Editor and Admin have the permission to read, create, update and delete the claims. +- Author and Contributor have the permission to read, create and update the claims. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the posts to trigger notification are: + +| Events | Description | +| ------------ | --------------------------------- | +| Create Claim | Triggered when a claim is added | +| Update Claim | Triggered when a claim is edited | +| Delete Claim | Triggered when a claim is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/events.md b/website/docs/core-concepts/events.md index 4bb45600b..bcf1b41ab 100644 --- a/website/docs/core-concepts/events.md +++ b/website/docs/core-concepts/events.md @@ -4,4 +4,62 @@ sidebar_position: 9 # Events -## Coming Soon +Events define when to trigger a notification for a webhook. For example, whenever a post is published user receives a notification on Slack or Google Chat. + +#### Webhooks + +Webhooks are used to notify the users when defined events have occurred. These allow Dega to send POST requests to user-configured URLs to send them a notification about it. The request contains a triggered event and the result could be a notification on the set URL. +To use webhooks, setting up [Hukz](https://github.com/factly/hukz) is required. Hukz is a simple & lightweight service implemented in GO to add webhooks to your application. This service is intended to fire webhooks on different events that are registered. +Webhook can be added from the Webhook menu item by clicking on New Webhook. Webhooks can be added only by admins of the organization. + +The user can add default events supported by Dega by clicking on Create default events. Events can be added only by the super organization. While creating webhook supported events are assigned to a webhook. + +All the Events will be available under the Events menu. +Events can be deleted by clicking on the Delete button. To edit an event click on the name of the event in the list. + +The events supported in Dega are listed below: + +| Events | Description | +| --------------- | -------------------------------------------------- | +| Create Category | Triggered when a category is added | +| Update Category | Triggered when a category is edited | +| Delete Category | Triggered when a category is deleted | +| Create Format | Triggered when a format is added | +| Update Format | Triggered when a format is edited | +| Delete Format | Triggered when a format is deleted | +| Create Media | Triggered when a media is added | +| Update Media | Triggered when a media is edited | +| Delete Media | Triggered when a media is deleted | +| Create Menu | Triggered when a menu is added | +| Update Menu | Triggered when a menu is edited | +| Delete Menu | Triggered when a menu is deleted | +| Create Post | Triggered when a post is added | +| Update Post | Triggered when a post is edited | +| Delete Post | Triggered when a post is deleted | +| Create Template | Triggered when a template is created | +| Publish Post | Triggered when a post is published | +| Unpublish Post | Triggered when a post is unpublished | +| Ready Post | Triggered when a post is saved as Ready to Publish | +| Create Space | Triggered when a space is added | +| Update Space | Triggered when a space is edited | +| Delete Space | Triggered when a space is deleted | +| Create Tag | Triggered when a tag is added | +| Update Tag | Triggered when a tag is edited | +| Delete Tag | Triggered when a tag is deleted | +| Create Claim | Triggered when a claim is added | +| Update Claim | Triggered when a claim is edited | +| Delete Claim | Triggered when a claim is deleted | +| Create Claimant | Triggered when a claimant is added | +| Update Claimant | Triggered when a claimant is edited | +| Delete Claimant | Triggered when a claimant is deleted | +| Create Rating | Triggered when a rating is added | +| Update Rating | Triggered when a rating is edited | +| Delete Rating | Triggered when a rating is deleted | +| Create Podcast | Triggered when a podcast is added | +| Update Podcast | Triggered when a podcast is edited | +| Delete Podcast | Triggered when a podcast is deleted | +| Create Episode | Triggered when a episode is added | +| Update Episode | Triggered when a episode is edited | +| Delete Episode | Triggered when a episode is deleted | +| Create Policy | Triggered when a policy is added | +| Update Policy | Triggered when a policy is updated | diff --git a/website/docs/core-concepts/fact-checks.md b/website/docs/core-concepts/fact-checks.md index b24bd7398..d3ad5c594 100644 --- a/website/docs/core-concepts/fact-checks.md +++ b/website/docs/core-concepts/fact-checks.md @@ -4,4 +4,85 @@ sidebar_position: 2 # Fact Checks -## Coming Soon! \ No newline at end of file +Fact-checks are posts of format: fact-check. Fact-checks have all the features available in a regular post (format: default) and are extended to add features specific to fact-checking. +Fact-Check can include claims and images. +New fact-check can be created from the Fact-Checks menu by clicking on the New Fact-Check button on the right side. + +The user can start writing fact-check using an [editor](/docs/features/powerful-editor) which is a rich text editor. It makes embedding images, links, or any related content very easy. + +The user can directly publish or can save it as a draft. The user can also mark the post as ready to Publish. + +Each post created has status from any of the following. + +- Draft +- Published +- Ready to Publish + +To save as draft click on the Save button on the right and to save as Ready to Publish; before clicking on the Save button make sure Ready to Publish is checked. +To publish the Fact-Check click on the Publish button. Only the user who is either an admin or has the permission to publish can publish the fact-check. + +Once the post is created, templates can be created from the post which can be used for future fact-checks. Templates are created by clicking on the Create Template button. +New Fact-checks can be created from templates by clicking on any of the templates available from the Templates section which is at the top of the Fact-check page. + +The user can add information about the fact-check by clicking on the Settings button. + +- Featured Image - An image that is a pictorial representation of the content and can also be used as a thumbnail for the fact-check. +- Excerpt - Brief description of the post +- [Tags](/docs/core-concepts/tags) - This allows users to add or assign tags to the post +- [Categories](/docs/core-concepts/categories) - This allows users to add or assign categories to the post +- [Claims](docs/core-concepts/claims) - This allows users to add claims to the post. The user can either select from the existing list of claims or can create a new claim by clicking on the Add claim button. + When clicked on the Add Claim button, a modal popup opens to add in details about the claim. + A Fact-check can have multiple claims. +- Authors - This allows users to add the author of the post +- Published Date - The date of publishing for the fact-check. If not entered automatically takes the current date when clicked on the Publish button. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the fact-check if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Add Meta Fields button to feed in extra data as a JSON object. + +### Code Injection + +Customizing the header and footer specific to a post can be done by adding code in the Code Injection section by clicking on the Code Injection button. + +### Schema + +Schema is generated automatically in the backend. This will be available in the Schema Section. + +All the fact-checks will be available under the Fact-Check menu. The list shows fact-checks with their categories, tags, and status. Three options are available: Edit, Quick Edit, and Delete. + +To simplify the [search](/docs/features/search-and-filtering) for a fact-check, filter and sort options are available. +Click on the More filters button right next to the New Fact-Check button to see the available filters. +Available filters are Tags, Categories, Status, Authors. + +The quick edit option helps to quickly edit any fact-check post settings such as tags, categories, authors, claims, status, published date, title, etc. + +To view the total number of Fact-Checks, click on the Dashboard menu. +It shows total Fact-checks as well as a count of Fact-Checks that are: draft, published, and ready to publish. + +### Policies + +The default policies for the fact-checks are: + +- Editor and Admin have the permission to read, create, update, delete and publish the fact-checks. +- Author and Contributor have the permission to read, create and update the fact-checks. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the fact-checks to trigger notification are: + +| Events | Description | +| --------------- | -------------------------------------------------- | +| Create Post | Triggered when a post is added | +| Update Post | Triggered when a post is edited | +| Delete Post | Triggered when a post is deleted | +| Create Template | Triggered when a template is created | +| Publish Post | Triggered when a post is published | +| Unpublish Post | Triggered when a post is unpublished | +| Ready Post | Triggered when a post is saved as Ready to Publish | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/formats.md b/website/docs/core-concepts/formats.md index f73cbb037..4c73f10c8 100644 --- a/website/docs/core-concepts/formats.md +++ b/website/docs/core-concepts/formats.md @@ -4,4 +4,49 @@ sidebar_position: 5 # Formats -## Coming Soon! \ No newline at end of file +Formats for a space can be created from the Formats menu. Creating formats is a must for writing any post or fact-check. Default formats for Dega can be added by clicking on the Create default Formats. + +The current default formats available in Dega are: + +- Fact-Check +- Article + +Fact-Check and Article formats are mandatory formats for Dega. + +- Name: This allows the user to add a Name of the format +- Featured - This field can be used to highlight the Format on the website if it is enabled. +- Featured Image - Image for the format +- Description: Describes what the format is. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the format if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a format can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Formats will be available under the Formats menu. +Formats can be deleted by clicking on the Delete button. To edit a Format click on the name of the format in the list. + +### Policies + +The default policies for the formats are: + +- Admin have the permission to read, create, update and delete the formats. +- Editor, Author and Contributor have the permission to read formats. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the ratings to trigger notification are: + +| Events | Description | +| ------------- | ---------------------------------- | +| Create Format | Triggered when a format is added | +| Update Format | Triggered when a format is edited | +| Delete Format | Triggered when a format is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/media.md b/website/docs/core-concepts/media.md index 8f9f5edd2..22d3c744d 100644 --- a/website/docs/core-concepts/media.md +++ b/website/docs/core-concepts/media.md @@ -4,4 +4,43 @@ sidebar_position: 7 # Media -## Coming Soon! +All the media files used across the space are available here. The media files used in the space are reusable across different posts, settings, etc. +The administrator of an organization can limit the number of media files allowed within a space. This limit can be configured from the Space Requests menu by creating a request to change the media file limit for a space. + +Media can be added from the Media menu by clicking on the Upload button on the right side. + +Uploading new media is supported by Uppy. More than one image can also be uploaded at a time. Media to be uploaded can be selected from the device, google drive, or through a link. +While uploading, basic editing options like crop, rotate, etc are provided. + +- Caption: This allows users to add a caption +- Alt-Text: This allows users to provide alternative text +- Description: This allows users to describe the media +- Delete button - To delete the media + +### Metafields + +There is also a provision to add more information about the media if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) to feed in extra data as a JSON object. + +All the media will be available under the Media menu. +[Search](/docs/features/search-and-filtering) and sort options are available to simplify the search for an image. To edit a Media click on the image in the list. + +### Policies + +The default policies for the media are: + +- Editor and Admin have the permission to read, create, update, delete and publish the media. +- Author have the permission to read, create and update the media. +- Contributor have the permission to read and create media. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the posts to trigger notification are: + +| Events | Description | +| ------------ | --------------------------------- | +| Create Media | Triggered when a media is added | +| Update Media | Triggered when a media is edited | +| Delete Media | Triggered when a media is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/organisations.md b/website/docs/core-concepts/organisations.md index 8f5d47b9e..4a5e38ba8 100644 --- a/website/docs/core-concepts/organisations.md +++ b/website/docs/core-concepts/organisations.md @@ -4,4 +4,15 @@ sidebar_position: 8 # Organisations -## Coming Soon! +To access Dega, creating an organization is mandatory. The first organisation, created will be a Super Organisation. While a Super Organisation could be used as a normal organisation within a Dega instance, it has the following capabilities to manage the entire Dega instance: + +- The users within the Super Organisation will have access to all the other organisations and their spaces. This is for support staff to help other organisations with any support queries. +- The admins within the Super Organisation will have admin access to the entire instance and will be able to manage the rest of the organisations and spaces. They have the ability to manage the usage limits for an oraganisation or spaces within. + +There is only one Super Organisation for a Dega instance but can create multiple Organisations as per user requirements. + +- Admin of a normal organisation will have the access to manage its organisation and applications. +- Applications to be used by an organization needs to be added from Kavach. For example, for an organisation to use Dega, it should be added from Kavach. Users can add default [Faclty applications](/docs/ecosystem/projects) from Kavach. +- Basic Settings for the organization are managed from Kavach. For example, adding applications, changing logos, adding users, etc. +- The organisation users to use applications of the organisation needs to be a part of that application. Admin of the organisation can provide users access to the applications. +- Settings for Dega for an organisation can be configured from Organisation Request by making a request. diff --git a/website/docs/core-concepts/pages.md b/website/docs/core-concepts/pages.md new file mode 100644 index 000000000..a35c6aea2 --- /dev/null +++ b/website/docs/core-concepts/pages.md @@ -0,0 +1,81 @@ +--- +sidebar_position: 11 +--- + +# Pages + +A Page is an area on your site where you can display content. A page can be about anything at all. Some of the most common pages on a website include Home, About, and Contact pages. + +You can add as many pages to your site as you would like, and you can update your pages as many times as you want. After a page is created, it can be added to the site's navigation menu. + +New Page can be created from the Pages menu by clicking on the New Page button on the right side. + +The user can start writing a page using an [editor](/docs/features/powerful-editor) which is a rich text editor. It makes embedding images, links, or any related content very easy. + +The user can directly publish or can save it as a draft. The user can also mark the page as ready to Publish. + +Each page created has status from any of the following. + +- Draft +- Published +- Ready to Publish + +To save as draft click on the Save button on the right and to save as Ready to Publish, before clicking on the Save button make sure Ready to Publish is checked. + +To publish the Page click on the Publish button. Only the user who is either an admin or has the permission to publish can publish the Page. + +Once the page is created, templates can be created from the page which can be used for future page. Templates can be created by clicking on the Create Template button. +New pages can be created from templates by clicking on any of the templates available from the Templates section which is at the top of the Pages page. + +The user can add information about the page by clicking on the Settings button. + +- Featured Image - An image that is a pictorial representation of the content and can also be used as a thumbnail for the page. +- Excerpt - Brief description of the page +- [Tags](/docs/core-concepts/tags) - This allows you to add or assign tags to the page +- [Categories](/docs/core-concepts/categories) - This allows you to add or assign categories to the page +- Authors - This allows you to add the author of the page +- Published Date - The date of publishing for the page. If not entered automatically takes the current date when clicked on the Publish button. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the page if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Add Meta Fields button to feed in extra data as a JSON object. + +### Code Injection + +Customizing the header and footer specific to a page can be done by adding code in the Code Injection section by clicking on the Code Injection button. + +### Schema + +Schema is generated automatically in the backend. This will be available in the Schema Section. + +All the pages will be available under the Pages menu. The list shows pages with their categories, tags, and status. Three options are available: Edit, Quick Edit, and Delete. + +To simplify the [search](/docs/features/search-and-filtering) for a page, filter and sort options are available. +Click on the More filters button right next to the New Page button to see the available filters. +Available filters are Tags, Categories, Status, Authors. + +The quick edit option helps to quickly edit any page settings such as tags, categories, authors, status, published date, title, etc. + +### Policies + +The default policies for the pages are: + +- Editor and Admin have the permission to read, create, update, delete and publish the pages. +- Author and Contributor have the permission to read, create and update the pages. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the pages to trigger notification are: + +| Events | Description | +| ----------- | -------------------------------- | +| Create Page | Triggered when a page is added | +| Update Page | Triggered when a page is edited | +| Delete Page | Triggered when a page is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/policies.md b/website/docs/core-concepts/policies.md index 6be0816db..720ca66e7 100644 --- a/website/docs/core-concepts/policies.md +++ b/website/docs/core-concepts/policies.md @@ -4,4 +4,43 @@ sidebar_position: 9 # Policies -## Coming Soon +Policies are mandatory for Dega to work as expected. Default Policies can be added by clicking on Create Default Policies. + +The default policies are + +- Editor +- Contributor +- Author + +A user is associated with a policy that authorizes what a user can access and update. +Each policy defines permission to get, create, update and delete for entities. Permission to publish or update a post is defined in a policy. These policies are used as permission across the Dega space while making any change to any entity. + +All the Policies will be available under the Policies menu. +Policies can be deleted by clicking on the Delete button. To edit a Policy click on the name of the policy in the list. + +The user can add a new policy from the Policy menu by clicking on the New Policy button on the right side. + +- Name: Name of the policy +- Users: This allows the user to select users of the application to be associated with the policy. +- Description: Describes what the policy is for. + +Permission to be provided to the user for each entity can be marked as checked from the options provided. + +### Policies + +The default policies are: + +- Admin have the permission to read, create, update and delete the policy. +- Editor and Author have the permission to read policy. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the policies to trigger notification are: + +| Events | Description | +| ------------- | ---------------------------------- | +| Create Policy | Triggered when a policy is added | +| Update Policy | Triggered when a policy is updated | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/posts.md b/website/docs/core-concepts/posts.md new file mode 100644 index 000000000..584d10768 --- /dev/null +++ b/website/docs/core-concepts/posts.md @@ -0,0 +1,84 @@ +--- +sidebar_position: 10 +--- + +# Posts + +Posts are articles or stories which may include images or other illustrations. +New Post can be created from the Posts menu by clicking on the New Post button on the right side. + +The user can start writing a post using an [editor](/docs/features/powerful-editor) which is a rich text editor. It makes embedding images, links, or any related content very easy. + +The user can directly publish or can save it as a draft. The user can also mark the post as ready to Publish. + +Each post created has status from any of the following. + +- Draft +- Published +- Ready to Publish + +To save as draft click on the Save button on the right and to save as Ready to Publish, before clicking on the Save button make sure Ready to Publish is checked. + +To publish the Post click on the Publish button. Only the user who is either admin or an admin or has the permission to publish can publish the Post. + +Once the post is created, templates can be created from the post which can be used for future posts. Templates can be created by clicking on the Create Template button. +New posts can be created from templates by clicking on any of the templates available from the Templates section which is at the top of the Post page + +The user can add information about the post by clicking on the Settings button. + +- Featured Image - An image that is a pictorial representation of the content and can also be used as a thumbnail for the post. +- Excerpt - Brief description of the post +- [Tags](/docs/core-concepts/tags) - This allows you to add or assign tags to the post +- [Categories](/docs/core-concepts/categories) - This allows you to add or assign categories to the post +- Authors - This allows you to add the author of the post +- Published Date - The date of publishing for the post. If not entered automatically takes the current date when clicked on the Publish button. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the post if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Add Meta Fields button to feed in extra data as a JSON object. + +### Code Injection + +Customizing the header and footer specific to a post can be done by adding code in the Code Injection section by clicking on the Code Injection button. + +### Schema +Schema is generated automatically in the backend. This will be available in the Schema Section. + +All the posts will be available under the Posts menu. The list shows posts with their categories, tags, and status. Three options are available: Edit, Quick Edit, and Delete. + +To simplify the [search](/docs/features/search-and-filtering) for a post, filter and sort options are available. +Click on the More filters button right next to the New Post button to see the available filters. +Available filters are Tags, Categories, Status, Authors. + +The quick edit option helps to quickly edit any post settings such as tags, categories, authors, status, published date, title, etc. + +To view the total number of posts, click on the Dashboard menu. +It shows total Posts as well as a count of Posts that are: draft, published, and ready to publish. + +### Policies + +The default policies for the posts are: + +- Editor and Admin have the permission to read, create, update, delete and publish the posts. +- Author and Contributor have the permission to read, create and update the posts. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the posts to trigger notification are: + +| Events | Description | +| --------------- | -------------------------------------------------- | +| Create Post | Triggered when a post is added | +| Update Post | Triggered when a post is edited | +| Delete Post | Triggered when a post is deleted | +| Create Template | Triggered when a template is created | +| Publish Post | Triggered when a post is published | +| Unpublish Post | Triggered when a post is unpublished | +| Ready Post | Triggered when a post is saved as Ready to Publish | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/ratings.md b/website/docs/core-concepts/ratings.md index d0ca1fec1..40f623df0 100644 --- a/website/docs/core-concepts/ratings.md +++ b/website/docs/core-concepts/ratings.md @@ -4,4 +4,52 @@ sidebar_position: 5 # Ratings -## Coming Soon! \ No newline at end of file +Each claim has a rating associated with it. Fact-checkers while creating a claim assign ratings to it. Organizations can have their rating system or can use the default ratings available. To add the default ratings the user can click on Create Default Ratings. + +The default ratings for Dega are + +- True +- False +- Misleading +- Unverified +- Party True + +- Name: Name for the rating +- Numeric Value: Rating value associated with each rating +- Background Color: This allows users to choose a background color to display for a rating +- Text Color: This allows users to choose a text color for a rating for displaying +- Preview: This previews the rating display with the selected background and text colors +- Description: Describes what the rating is. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the rating if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a rating can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Ratings will be available under the Ratings menu. +Ratings can be deleted by clicking on the Delete button. To edit a Rating click on the name of the rating in the list. + +### Policies + +The default policies for the ratings are: + +- Editor and Admin have the permission to read, create, update and delete the ratings. +- Author and Contributor have the permission to read ratings. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the ratings to trigger notification are: + +| Events | Description | +| ------------- | ---------------------------------- | +| Create Rating | Triggered when a rating is added | +| Update Rating | Triggered when a rating is edited | +| Delete Rating | Triggered when a rating is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/core-concepts/spaces.md b/website/docs/core-concepts/spaces.md index a58e0eea2..4805367d1 100644 --- a/website/docs/core-concepts/spaces.md +++ b/website/docs/core-concepts/spaces.md @@ -4,4 +4,50 @@ sidebar_position: 6 # Spaces -## Coming Soon! +Having at least one space for an organization is mandatory for Dega. An organization can create one or more spaces based on permissions and requirements. The organization has a limit on the number of spaces for each organization which can be changed by requesting the from the Organisation Requests menu. + +Each space has certain permissions which are managed by the admin. These permissions include a defined number of posts, media, and also enable or disable fact-checks. To change permissions for space, a request can be made from the Space Requests menu. +Each space is associated with one organization. + +Spaces can be created from the Space menu item by clicking on the New Space button on the right side. + +The form provides the ability to add basic information for the space. + +- Organization: Organization for which space needs to be created +- Name: Name of the space +- Title: Title for the space +- Tag Line: Tagline of the space +- Website: The website information for the space +- Description: Describes what the space is for. + +### Metafields + +To add more information about the space if the field is not included in the form. The user can use [Metafields](/docs/features/extend-features) to feed in extra data as a JSON object. + +After the space is created, the user can add more information about the space. + +The media section allows the user to add logos and icons + +- Logo +- Logo Mobile +- Fav Icon +- Mobile Icon + +The contact section allows the user to add information about the social media + +- Facebook +- Twitter +- Pinterest +- Instagram + +The analytics section allows the user to add information to get the analytics for the space which can be viewed later in the Analytics Menu + +- Server URL +- Domain +- Embed Code + +Code Injection section: +Customizing the header and footer specific to a format can be done by adding code in this section + +All the Spaces will be available under the Spaces menu. +Spaces can be deleted by clicking on the Delete button. To edit a Space click on the name of the space in the list. diff --git a/website/docs/core-concepts/tags.md b/website/docs/core-concepts/tags.md new file mode 100644 index 000000000..7ded480c5 --- /dev/null +++ b/website/docs/core-concepts/tags.md @@ -0,0 +1,48 @@ +--- +sidebar_position: 13 +--- + +# Tags + +Tags are like hashtags. Tags provide a useful way to group related posts. Tags also make it easier for people to find your content. + +Users can add or assign tags while creating a post. While adding a tag for a post, if a Tag does not exist then click on Create a Tag button. This allows users to quickly create a new tag and assign it to a post. + +Tags can be added from the Tags menu item by clicking on the New Tag button on the right side. + +- Name: Name of a tag +- Description: Describe what tag is for +- Featured Image: Image for a tag +- Featured - This field can be used to highlight the Tag on the website if it is enabled. + +### SEO Metadata + +Apart from the basic information, extra data can be added such as [SEO metadata](/docs/features/search-engine-optimisation). SEO metadata includes title, description, and canonical URL. It can be added by clicking on the Add MetaData button. + +### Metafields + +There is also a provision to add more information about the tag if the field is not included in the form. The user can use the [Metafields](/docs/features/extend-features) section by clicking on the Meta Fields section to feed in extra data as a JSON object. + +Customizing the header and footer specific to a tag can be done by adding code in the Code Injection section by clicking on the Code Injection section. + +All the Tags will be available under the Tags menu. +[Search](/docs/features/search-and-filtering) and sort options are available to simplify the search for a Tag. Tags can be deleted by clicking on the Delete button. To edit a Tag click on the name of the tag in the list. + +### Policies + +The default policies for the tags are: + +- Admin, Editor and Author have the permission to read, create, update and delete the tags. + Apart from the default policies, the admin can customize the [policies](/docs/core-concepts/policies) from Policies Menu. + +### Events + +The defined events for the tags to trigger notification are: + +| Events | Description | +| ---------- | ------------------------------- | +| Create Tag | Triggered when a tag is added | +| Update Tag | Triggered when a tag is edited | +| Delete Tag | Triggered when a tag is deleted | + +These events can be registered while creating a webhook. These Events can be configured from [Events](/docs/core-concepts/events) menu. diff --git a/website/docs/features/extend-features.md b/website/docs/features/extend-features.md new file mode 100644 index 000000000..cc5bbc465 --- /dev/null +++ b/website/docs/features/extend-features.md @@ -0,0 +1,5 @@ +--- +sidebar_position: 4 +--- + +# Extending existing features \ No newline at end of file diff --git a/website/docs/features/multitenancy.md b/website/docs/features/multitenancy.md new file mode 100644 index 000000000..ef5289e47 --- /dev/null +++ b/website/docs/features/multitenancy.md @@ -0,0 +1,28 @@ +--- +sidebar_position: 8 +--- + +# Multitenancy + +Dega has multi-tenant architecture in which a single instance of Dega supports multiple [organisations](/docs/core-concepts/organisations). It has one super-organisation which can also act like a normal organisation but has capabilities to manage the entire Dega instance. Apart from the super-organisation, there can be multiple isolated normal organisations. All the organisations function as logically independent organisations but are physically integrated. + +An organisation can internally have multiple spaces. It is mandatory to have at least one space per organisation. Each organisation has its administrator to manage its organisation and spaces. + +``` +Dega Instance +│ +└───Super Organisation +│ │ +│ └───Space 1 +│ └───Space 2 +│ +└───Organisation 1 +│ │ +│ └───Space 1 +│ +└───Organisation 1 +│ │ +│ └───Space 1 +│ └───Space 2 +│ └───Space 3 +``` diff --git a/website/docs/features/powerful-editor.md b/website/docs/features/powerful-editor.md new file mode 100644 index 000000000..0defa8837 --- /dev/null +++ b/website/docs/features/powerful-editor.md @@ -0,0 +1,66 @@ +--- +sidebar_position: 5 +--- + +# Powerful Editor + +Dega has a powerful block-styled editor with basic formatting options as well as the ability to quickly add images, videos, embeds, code, etc. The editor workspace consists of separate Blocks: paragraphs, headings, images, lists, quotes, etc. Each of them is an independent content-editable element. Since it is a block-based editor so each block can be easily re-ordered. + +When clicked on the writing space, the '+' symbol and appears. Click on the '+' to get the list of editor tools. Every block has settings option on the top right corner of the block, using which block you can re-order or remove the block. + +## Text Editing + +The editor allows you to efficiently format text, add links, highlighting text, include inline code. + +## Marker + +The marker tool allows you to highlight the selected text. + +## Raw HTML + +The raw HTML tool of the editor allows you to include raw HTML code in your post. + +## Table + +The Table tool of the editor allows you to add a table to a post. You can configure the table by adding rows and columns. + +## Code Block + +The editor allows you to add code snippets to your post using the code block tool. + +## Embed + +The editor allows you to embed content related to the post by pasting the URL. It also allows you to add captions for it. + +## Image + +The Image tool of the editor allows you to add images to your posts in many ways: + +- Select from existing images in your Dega [Space](/docs/core-concepts/spaces) +- Upload from your device +- Upload from Google Drive +- Insert using a URL + +Once inserted you can blend images beautifully into your content at different sizes. + +## Quote + +The editor allows you to add Quote blocks to your posts. + +## Shortcuts + +You can use shortcuts to have quick access to different tools of the editor. +The editor supports the following tool shortcuts: + +| Tool | Shortcut | +| -------------- | ------------ | +| **Header** | CMD+OPTION+1 | +| **List** | CMD+OPTION+6 | +| **Paragraph** | CMD+OPTION+0 | +| **Quote** | CMD+OPTION+O | +| **RawTool** | CMD+OPTION+R | +| **Table** | CMD+OPTION+T | +| **CodeTool** | CMD+OPTION+8 | +| **InlineCode** | CMD+E | +| **Marker** | CMD+OPTION+H | +| **Embed** | CMD+OPTION+E | diff --git a/website/docs/features/proxy-server.md b/website/docs/features/proxy-server.md new file mode 100644 index 000000000..8b6290052 --- /dev/null +++ b/website/docs/features/proxy-server.md @@ -0,0 +1,9 @@ +--- +sidebar_position: 7 +--- + +# Proxy Server for rich media + +Dega has built-in support for an oembed proxy server for rich media using [Iframely](https://iframely.com/). Iframely resolves URLs and gives you consistent semantics, rich media, all its shades, thumbnails, and more. This is used to embed related content in your post. You can paste the URL and the content gets embedded in your post. + +Iframely includes specific domain parsers for most popular publishers. YouTube, Facebook, Instagram, Twitter, SoundCloud, Google Maps, TED, Twitch, and many more. In addition, Iframely covers many domains by whitelisting media through the generic publishing protocols: oEmbed, Open Graph, Twitter Cards, and microformats. diff --git a/website/docs/features/search-and-filtering.md b/website/docs/features/search-and-filtering.md new file mode 100644 index 000000000..15e794bbe --- /dev/null +++ b/website/docs/features/search-and-filtering.md @@ -0,0 +1,44 @@ +--- +sidebar_position: 6 +--- + +# Search and Filtering + +Dega has a powerful search and filtering built using [MeiliSearch](https://www.meilisearch.com/). +The search will return results from the titles and the content of your posts and pages. It will also return results from other fields such as to excerpt, description, claim, fact, etc. Results can be filtered using the attributes of an entity. The fields used as filters are user-defined. + +## MeiliSearch + +The core concepts of MeiliSearch are: + +- [Documents](https://docs.meilisearch.com/learn/core_concepts/documents.html#primary-field): It is an object composed of one or more fields. Each field consists of an attribute and its associated value. +- [Indexes](https://docs.meilisearch.com/learn/core_concepts/indexes.html#index-creation): It is an entity that gathers a set of documents with its settings. +- [Relevancy](https://docs.meilisearch.com/learn/core_concepts/relevancy.html#ranking-rules): It refers to the accuracy and effectiveness of search results. The most appropriate search results are considered as Relevant results. + +All the documents are gathered and associated with an index. Each index has its relevancy rules. For example, Dega will be index and all the objects will be considered as documents. The relevancy rules describe the order in which the query will be matched with the attributes of the documents. For example, if the document attributes are listed as follows: id, title, description. There are two posts related to fitness, first has the title as 'Healthy diet' and the second has the title as 'Physical Fitness'; then on searching for 'fitness' second post will be at the top of the list + +### Ranking Rules + +To ensure relevant results, search responses are sorted according to a set of consecutive rules called ranking rules. + +Whenever a search query is made, MeiliSearch uses a bucket sort to rank documents. The first ranking rule is applied to all documents, while each subsequent rule is only applied to documents that are considered equal under the previous rule (i.e. as a tiebreaker). + +MeiliSearch contains five built-in ranking rules: words, typo, proximity, attribute, and exactness, in that default order. + +- Words: Results are sorted by decreasing the number of matched query terms. Returns documents that contain all query terms first. +- Typo: Results are sorted by an increasing number of typos. Returns documents that match query terms with fewer typos first. +- Proximity: Results are sorted by an increasing distance between matched query terms. Returns documents where query terms occur close together and in the same order as the query string first. +- Attribute: Results are sorted according to the attribute ranking order. Returns documents that contain query terms in more important attributes first. +- Exactness: Results are sorted by the similarity of the matched words with the query words. Returns documents that contain the same terms as the ones queried first. + +### Attribute Ranking Order + +In a typical dataset, some fields are more relevant to search than others. A title, for example, has a value more meaningful to a post search than its description or its published_date. + +By default, the attribute ranking order is generated automatically based on the attributes' order of appearance in the indexed documents. However, the SearchableAttributes list can also be manually set. This list describes which fields are searchable and also dictates the attribute ranking order. + +## Filtering + +MeiliSearch allows you to define [filters](https://docs.meilisearch.com/reference/features/filtering_and_faceted_search.html?#configuring-filters) so you can filter through the results based on user-defined criteria. Filters use document fields to establish filtering criteria. To use a document field as a filter, you must first add its attribute to the FilterableAttributes index setting. + +For example, to filter posts based on their category, author, status, etc you must add these fields to the FilterableAttributes list. diff --git a/website/docs/features/search-engine-optimisation.md b/website/docs/features/search-engine-optimisation.md new file mode 100644 index 000000000..2d6d1ac12 --- /dev/null +++ b/website/docs/features/search-engine-optimisation.md @@ -0,0 +1,27 @@ +--- +sidebar_position: 3 +--- + +# Search Engine Optimisation + +The term "search engine optimization" refers to the process of optimising a website for search engines. In simple terms, it refers to the process of upgrading to boost visibility when people use search engines to look for items or services linked to your business. The higher your pages' exposure in search results, the more likely you are to attract more attention and customers to your business. + +The job of a search engine is to crawl a website and determine whether it is relevant to a given search query. While keyword matching within content and backlinks to the page are important factors in ranking, metadata provides further information about the website's purpose. Based on these components, search engines can crawl a website and infer its basic purpose. + +### SEO MetaData + +Metadata is data that describes other data. However, in SEO, the types of metadata we are discussing provide an overview and summary of the content of a web page. + +SEO Metadata comprises of Title, Description, and Canonical URL. + +**Meta Title:** The main title of the webpage is specified in the meta title. It's critical to place your keyword as close to the start of the title as feasible. +**Meta Description:** In the metadata, the meta description is displayed underneath the title. It summarises the webpage's content. +**Canonical URL:** A canonical URL informs search engines that a specific URL represents the master copy of a page. Using the canonical URL prevents difficulties caused by identical or "duplicate" content appearing on various URLs. Practically speaking, the canonical URL tells search engines which version of a URL you wish to see in search results. + +### Why SEO MetaData + +Whilst metadata is critical for SEO, it isn't a direct rating aspect utilized in search engine algorithms. However, there are roundabout advantages that can prompt a lift in rankings. + +As mentioned previously, the cause of metadata is to summarise your content, to lure them to click on your web website online. When you show a compelling and informative meta title and description, viewers are much more likely to click on your page. + +Google makes use of click-through rate as a method of working out whether or not your web website is a decent outcome. The more individuals navigate to your site, the more Google will take into account you to be a quality outcome. Thus, in this manner, Google would then move you up the positions. An improved natural click-through rate, in the long run, improves rating. diff --git a/website/docs/how-to-guides/google-chat-notification.md b/website/docs/how-to-guides/google-chat-notification.md new file mode 100644 index 000000000..9224c0157 --- /dev/null +++ b/website/docs/how-to-guides/google-chat-notification.md @@ -0,0 +1,19 @@ +--- +sidebar_position: 8 +--- + +# Event Notification on Google Chat + +Notify your team on Google Chat whenever any defined [event](/docs/core-concepts/events) occurs. For example, notify when a new post is published. + +### Webhook creation in Google Chat + +First of all, you’ll need to set up a webhook in your team’s Google Chat room. A webhook is a method for Google Chat to get incoming messages to be posted to your Google Chat room from external services. + +### Webhook customisation & copy URL + +Once the webhook is created, give a name for the webhook and can optionally provide the avatar URL which the webhook uses whenever it posts a message. Copy the Webhook URL at the very top. + +### Adding webhook to Dega + +In Dega, a webhook can be added from Webhooks Menu by clicking on New Webhook. Here, you can give a name to your webhook and paste the copied webhook URL. From the list of events supported by Dega, you can select events for which you wish to receive a notification. After selection of the events, enable the webhook and then click on the Submit button to add the Webhook. diff --git a/website/docs/how-to-guides/slack-notification.md b/website/docs/how-to-guides/slack-notification.md new file mode 100644 index 000000000..d84c857ac --- /dev/null +++ b/website/docs/how-to-guides/slack-notification.md @@ -0,0 +1,19 @@ +--- +sidebar_position: 7 +--- + +# Event Notification on Slack + +Notify your team on Slack whenever any defined [event](/docs/core-concepts/events) occurs. For example, notify when a new post is published. + +### Webhook creation in Slack + +First of all, you’ll need to set up a webhook in your team’s Slack configuration. A webhook is a method for Slack to get incoming messages to be posted to your Slack team from external services. + +### Webhook customisation & copy URL + +Once the webhook is created, you can optionally customise the channel, name, and icon which the webhook uses whenever it posts a message. Copy the Webhook URL at the very top. + +### Adding webhook to Dega + +In Dega, a webhook can be added from Webhooks Menu by clicking on New Webhook. Here, you can give a name to your webhook and paste the copied webhook URL. From the list of events supported by Dega, you can select events for which you wish to receive a notification. After selection of the events, enable the webhook and then click on the Submit button to add the Webhook.