Purpose
Interact is a simple PHP open-source comment system that can be added to any website in minutes to improve interactivity and user's involvement. Client-side, it is very lightweight (<6KB CSS and JS combined) and intuitive (no logins, no cookies,...). Server-side, it is very easy to setup, manage and even customize to fit your needs.
Similarly to its older brother HashOver, Interact does not use an SQL database but stores comments as XML files. Many third-party comment systems like Disqus, IntenseDebate, Livefyre, Facebook Comments and Google+ Comments, suffer from these problems and impose them and many restrictions onto their users, meaning you and your website's visitors.
Features
- Fast and convenient for your users with responsive design.
- Very simple setup: no database to configure, just install it and add 2 lines of PHP where you want your comment section to be.
- Customizable style and behavior to match the look & feel of your website.
- Anti-Spam system using Google's reCAPTCHA v2 (optional).
- Pure JS (no JQuery required).
- Secure by design.
- New: Inline markdown syntax support in comments (bold, italics,
strikethroughandinline code
)
Installation and setup
- Download Interact on GitHub.
- Extract it under your website's root.
- Customize Interact's behavior to your needs by editing the /lib/Interact_PHP/settings.php file.
- Give the directory that will contain the comments the 777 permission (
chmod 777 path/to/Interact_PHP/Comments
).
Hurray, Interact is ready to go! To add a comment section to a page, just insert the following PHP:
<?php
include_once($_SERVER['DOCUMENT_ROOT'].'/lib/Interact_PHP/Interact_PHP.php');
\Interact_PHP\Interact_PHP();
?>
Parameters and cutomization
All of the parameters of Interact are in the settings.php file. There are a lot of comments to assist you in the configuration process.
If you want to add your own style, copy an existing CSS file to get started... and commit it on GitHub if you want to contribute to Interact's ongoing developpement!
Troubleshooting
This section describes the various problems you may encounter while installing/using Interact. If you don't find a solution here, please add a GitHub issue.
- I can't add comments
You should check the permissions of the folder containing the comments (Interact/Comments by default). The PHP user must be able to write there. Setting 777 works (chmod -R 777 Comments
).
For some reason, the libxml PHP library was not enabled on PHP7 on one of my servers. Installing it fixed the issue (apt-get install php7.0-xml
, reboot when completed).
- The CSS does not load
The path of the library relative to the root of your website is probably incorrect. Make sure it matches with the value in settings.php. By default, it is /lib/Interact.
- I am getting reCAPTCHA errors even after checking the box
You need to make sure that your reCAPTACHA public and secret keys are correct. Interact uses reCAPTCHA v2. More info at https://developers.google.com/recaptcha/docs/display
Future features
- A simple admin interface to manage comments (Work In Progress)
- A tag to identify the admin (Work In Progress)
Author: Charles Grassin
What is on your mind?
#1 leo
on April 11 2019, 2:39
#2 兔
on April 11 2019, 2:44
#3 Charles
on May 12 2019, 2:57
#4 dfaff
on July 31 2019, 5:28
#5 DaAds
on August 5 2019, 18:01
#6 Aaa
on August 6 2019, 11:21
#7 Vlad
on August 11 2019, 14:15
#8 hghgh
on August 30 2019, 3:02
#9 ggggggggggggggggg
on August 30 2019, 3:03
#10 ,iş,ş
on December 10 2019, 16:16
#11 Wsad
on December 14 2019, 16:33
#12 :kn
on December 17 2019, 16:55
#13 lkj
on December 17 2019, 16:55
#14 Tester
on March 5 2020, 21:38
#15 Rob
on March 26 2020, 12:05
#16 Tester
on April 7 2020, 10:26
#17 Tester
on April 7 2020, 10:28
#18 NotARussianSpy
on October 27 2020, 16:13
#19 strikethrough
on October 27 2020, 16:15
#20 Anton
on May 3 2021, 10:45
#21 Maximo
on May 3 2021, 21:37
#22 Isiah
on May 4 2021, 4:42
#23 Effie
on May 5 2021, 0:59
#24 Rosa
on May 5 2021, 1:18
#25 Betsey
on May 5 2021, 4:12
#26 Mari
on May 5 2021, 4:23
#27 Shawnee
on May 5 2021, 4:55
#28 Elliott
on May 5 2021, 9:42
#29 Brock
on May 5 2021, 12:48
#30 Elisha
on May 7 2021, 15:56
#31 Corine
on May 7 2021, 23:05
#32 Mari
on May 7 2021, 23:31
#33 Libby
on May 8 2021, 2:56
#34 Katrin
on May 8 2021, 4:05
#35 Kenny
on May 9 2021, 13:31
#36 Leanna
on May 9 2021, 19:14
#37 Misty
on May 9 2021, 19:59
#38 Lemuel
on May 12 2021, 3:20
#39 Wilbur
on May 12 2021, 3:52
#40 Mazie
on May 12 2021, 9:35
#41 Sommer
on May 12 2021, 10:08
#42 Geoffrey
on May 12 2021, 10:18
#43 Carson
on May 12 2021, 12:25
#44 Junko
on May 20 2021, 13:19
#45 Bernadine
on May 20 2021, 14:52
#46 Rosemary
on May 20 2021, 15:04
#47 Kourtney
on May 20 2021, 20:11
#48 Elisa
on June 1 2021, 18:36
#49 Twila
on June 1 2021, 18:39
#50 Dana
on June 1 2021, 20:32
#51 Concepcion
on June 1 2021, 21:43
#52 Mike
on June 2 2021, 11:56
#53 Mac
on June 3 2021, 2:52
#54 Romeo
on June 5 2021, 18:40
#55 Jude
on June 5 2021, 23:16
#56 Hong
on June 6 2021, 3:45
#57 Jamal
on June 6 2021, 5:25
#58 Lierracing3.Wordpress.Com
on July 8 2021, 9:44
#59 Leora
on August 8 2021, 1:38
#60 Adriana
on August 10 2021, 21:05
#61 Milford
on August 20 2021, 10:42
#62 hhh
on August 23 2021, 12:33
#63 kjkjk
on August 23 2021, 12:33
#64 Wilfredo
on September 7 2021, 21:57
#65 Bobitonka
on February 26 2022, 15:56
#66 yazoko
on February 27 2022, 20:34
#67 Kris
on May 1 2022, 21:14
#68 Leonard
on May 2 2022, 10:38
#69 Kia
on May 2 2022, 19:29
#70 Brad
on May 3 2022, 11:17
#71 Lorri
on May 6 2022, 16:58
#72 Verena
on May 8 2022, 8:50
#73 Aubrey
on May 10 2022, 17:09
#74 Athena
on May 11 2022, 22:10
#75 Lawerence
on May 13 2022, 0:51
#76 Sidney
on May 13 2022, 3:46
#77 Flor
on May 13 2022, 5:16
#78 Margarito
on May 13 2022, 13:16
#79 Wallace
on May 13 2022, 22:40
#80 Bridgette
on May 14 2022, 10:45
#81 Jody
on May 14 2022, 11:04
#82 Nannette
on May 16 2022, 10:12
#83 Zac
on May 16 2022, 11:41
#84 Essie
on May 21 2022, 15:44
#85 Casimira
on May 21 2022, 17:25
#86 Tyree
on May 22 2022, 20:43
#87 Mellissa
on May 23 2022, 13:08
#88 Lorrine
on May 23 2022, 14:16
#89 Chelsey
on May 25 2022, 17:00
#90 Calvin
on May 29 2022, 0:41
#91 Addie
on May 29 2022, 4:19
#92 Melba
on May 29 2022, 8:17
#93 Miles
on June 1 2022, 17:01
#94 Reed
on June 1 2022, 21:39
#95 Kelle
on June 2 2022, 20:21
#96 Ivan
on June 2 2022, 22:18
#97 Evie
on June 4 2022, 2:06
#98 Terrell
on June 4 2022, 2:29
#99 Errol
on June 4 2022, 13:59
#100 Geneva
on June 6 2022, 17:28
#101 Juli
on June 6 2022, 22:41
#102 Robyn
on June 7 2022, 2:34
#103 Marshall
on June 7 2022, 19:40
#104 Chang
on June 7 2022, 23:13
#105 Reinaldo
on June 8 2022, 3:39
#106 Adriene
on June 8 2022, 6:20
#107 Amos
on June 9 2022, 23:46
#108 Shirleen
on June 10 2022, 1:04
#109 Neva
on June 10 2022, 1:32
#110 Joleen
on June 10 2022, 6:42
#111 Lionel
on June 10 2022, 7:36
#112 Cornell
on June 10 2022, 10:43