The Comments module adds the ability to include comments to any resource which can be commentable by users.
The Comments component is exposed as a Rails helper:
<%= comments_for @commentable %>
In order to use the helper in your templates you need to include the comments helpers in your application helper:
//= require decidim/comments/comments
Add this line to your application’s Gemfile.
And then execute:
The technology stack used in this module is the following:
For the backend side:
Ruby on Rails
For the frontend side:
Typescript (introduced in #1001)
The frontend code can be found in the folder
app/frontend instead of
app/assets. We are using Webpack to build the React application so we
are keeping the React files in a separate folder and then including the
bundle.js file using sprockets as usual.
You need to execute
npm start in a separate terminal, in the
root folder while you are developing this module. When you are finished
you can build the project for production like this:
npm run build:prod. We are checking in the bundle into the repository.
You can execute
npm run test:watch to listen for file changes.
Since we are using Typescript we can generate interfaces and types from our schema using the following command:
npm run graphql:generate_schema_types
This command will create a file called
that can be used to strict type checking in our components.
In order for this to work your Rails server must be running at
localhost:3000, if you’re using a different host you can set it with
DECIDIM_HOST=myhost:3000 npm run graphql:generate_schema_types