Retrospected
Retrospected is a free AI-powered Real-time Agile Retrospective Board for engineering teams.
This project is both an actual product, and also a technology demo using the latest and greatest JavaScript/TypeScript libraries of the month.
It features the following technologies:
- React 18
- React Hooks
- React Router 6
- TypeScript 4.9
- Recoil.js, as the global state management library
- Socket IO
- Vite, as the bundler
- MUI 5 for our components (previously known as Material-UI)
- Material UI design
- Emotion
- Multilingual / Internationalization
- Postgres
- Node 18 (LTS)
- Passport for seamless OAuth authentication with:
- GitHub
- Slack
- Microsoft
- Okta
- Giphy because adding a bit of fun to your retro can't hurt!
- React Beautiful DND to allow re-ordering and grouping by drag-and-drop
- Vitest, for Unit Testing
- React Testing Library, for Integration Tests
- Yarn, replacing NPM
- Docker, for easy deployment
- Kubernetes, to scale Retrospected for its 10M+ users (not)
- GitHub Actions, for Continuous Integration and Deployment (CI/CD)
- Multi-Architecture, for automatic compatibility with ARM-based servers
- Stripe, for our payment solution
- Docusaurus, for our documentation
- NextJS, for our landing page
- ChatGPT, powering our AI agile coach
Previous versions featured the following libraries:
Webpack 5 (See older versions for Webpack 1, 2 and 3)Create React App 5Jest for Unit TestingReduxCSS Modulesredux-sagareselectESLint for JS and JSX
Documentation 📖
You can browse the documentation here.
Using Retrospected 🚀
You have two ways of running Retrospected:
- Using the public version, at www.retrospected.com
- Host Retrospected on your premises
Want to host Retrospected on your premises? 🖥
You can start an instance of Retrospected in 5 minutes by following the quick-start guide.
This will run a demo version, which you can turn into a fully licenced version by purchasing a Self Hosted licence.
Versions History
Version 5.4.1
- Add the ability to remove the Cookie Banner (GDPR) on Self-Hosted instances (which is now the case by default)
- Upgrade dependencies (frontend)
Version 5.4.0
- Add the concept of a moderator, so the person creating the retro is not necessarily the person moderating it.
- Upgrade the database to Postgres 16 (latest version)
- Allow finer-grained timers.
- Fix an issue with the left-hand-side panel layout (👏 Thanks to @ruandev for the fix)
- SEO optimizations
Version 5.3.1 (hotfix)
- 🐛 Adding a group was not working in the previous version. This is now fixed.
Version 5.3.0
- [⭐️ Self-Hosting] new features:
- Option to disable data deletion (GDPR)
- Option to disable "Show Author" globally
- New retrospective options:
- Option to restrict editing the title of a session to the moderator
- Option to restrict ordering and grouping to the moderator
- When accessing a private session that you don't have access to, it will now show the name of the moderator.
- Search functionality has been improved: it will now only show matching cards
- 🐛 Bug fix: when there are too many users connected, the "I'm ready button" would become hidden. This is now fixed.
- The Agile Coach is now using Chat GPT 4, which is much more powerful
- A new explanatory video has been added to the marketing website, and the app itself.
- ⏫ Upgrading dependencies
Version 5.2.2 (hotfix)
- Improving documentation
Version 5.2.1 (hotfix)
- Header logo bug fix
Version 5.2.0
- [⭐️ Self-Hosting] Adding white-labelling customisation options to Self-Hosted instances
- New page explaining what Self-Hosted is and what it can do for you
- New callback button on the marketing website
Version 5.1.2 (hotfix)
- Fix odd bug crashing the side-panel in certain circumstances
Version 5.1.1
- Add blog pages to the marketing website
- Rewording on the marketing website
- Fix an issue on the marketing website where links were not working
- Add a warning on the app when a user has a pro account but did not add members to their account
- ⏫ Upgrading dependencies
Version 5.1.0
- [⭐️ Pro Feature] 🤖 AI Coach, powered by Chat GPT. Limited access to non-paid users.
- Improve the login workflow
- Improve the template selection
- Improve the home page, with search on past retrospectives and nicer button
- Allow a user to convert their Anonymous account to a regular account and migrate their data
- Bug fix: fix bug where multiple demos were created
Version 5.0.3
- 🇩🇪 Adding the German version of our marketing website
- Self-Hosted: Improve licence checking to avoid being blocking when internet is not available
- Better support for AD campaigns
- Redirect regional TLDs (.de, .fr) to .com
Version 5.0.2
- Simplify management of environment variables on the frontend
- Add an error 404 page on the marketing site
- Add Ad-Words tracking on the landing page
Version 5.0.1
- Add Google Ad-Words tracking on the frontend
- Fix self-hosted licence checking URL
Version 5.0.0
- 👩💻 Brand new landing page, built with NextJS, separated from the main app. The app is now available at https://app.retrospected.com and the landing page at https://www.retrospected.com.
- 🇫🇷 / 🇬🇧 Multilingual support for this new landing age (English and French for now), with auto-detection of the user's language.
- 🚀 Migration from CRA (create-react-app) to Vite, which is much faster and more flexible.
- 💯 Migration to Google Analytics 4
- 🏂 Adding a demo mode: one-click to create a demo session, with a demo account.
- 🖥️ Improved support for self-hosted licence generation
Version 4.19.3 (hotfix)
- Fix Pro account list
Version 4.19.2
- Migration to Google Analytics V4
Version 4.19.1
- Hotfix: Issue with password account creation
Version 4.19.0
- Feature: Adding the ability to set a timer for a session. This is optional and can be enabled in the settings. (👏 Thanks to @Xyaren for the idea)
- Feature: Confirm before deleting a post. Avoids accidental deletion of posts. (👏 Thanks to @vadamovsky for the idea)
- Feature: Allow users to cancel their votes on a specific ticket. This feature can be disabled in the settings. (👏 Thanks to @Xyaren for the idea)
- Feature: Self-Hosted only: Display the number of logged users (👏 Thanks to @dayByte for the idea)
- Upgrade to the latest version of TypeORM
- Convert all backend code to ESM
- 🇩🇪 German language updates (👏 Thanks to @dayByte for his contribution)
Version 4.18.1 (hotfix)
- Reinstates the Enter icon on board input on mobiles (👏 Thanks to Hans K. for the idea)
Version 4.18.0
- Self-Hosted: Adding the ability to merge users (migrating their data into another user). This is only available for self-hosted instances, through the Administration panel (👏 Thanks to Frank Becker for the idea)
- ⏫ Upgrade vulnerable dependencies (thanks to dependabot)
- Fix issues found by code scanning (CodeQL)
Version 4.17.0
- Adding the ability to set administrators for a Pro subscription. An administrator can add and remove users from the Pro subscription, and be independent from the owner (who manages payments). Useful for resellers.
- Display the owner of the subscription clearly on the Account Page
- Upgrading GitHub Actions
- ⏫ Upgrading dependencies
Version 4.16.3
- Exposing "tenant", "authorization url" and "token url" for Microsoft OAuth. (👏 Thanks to Frank Becker for the idea)
- 🇩🇪 German language improvements (👏 Thanks @Tobias G for the PR!)
- ⏫ Upgrading dependencies
Version 4.16.2
- Fixed a bug where sessions a user participated in did not show up on their homepage. (👏 Thanks a bunch to Frank Becker for reporting the issue and helping find the problem)
Version 4.16.1
- Fixed a bug where sessions could not be deleted when there was any chat messages (👏 Thanks Florin Bicher for the report)
- Update icon
- Better Slack integration
Version 4.16.0
- Complete overhaul of the translations. Switching to i18next. Translated all languages using Machine Learning (via Crowdin)
- Added translations for the Ukrainian language, and a link to provide help for Ukraine 🇺🇦
- Fix the empty file download when logging using Google OAuth
- Upgrade the documentation to the latest version of Docusaurus
- Add more integration tests, covering password accounts and account deletion
- Added the language picker in the account page, in addition to the side panel
Version 4.15.0
- Self-Hosting: Improve Admin dashboard for Self-Hosted, allowing the admin to add and delete users
- Self-Hosting: Add an option to allow self-signed certificates for the SMTP server, for sending emails
- Fix GDPR account deletion, which did not work when the user had any chat messages
- Upgrade React typings to v18
- ⏫ Upgrading all frontend dependencies
Version 4.14.1 (hotfix)
- Remove CSRF code, causing random issues
Version 4.14.0
- Upgrade to React 18
- Replace icons by emoji for columns headers (fully customisable)
- Self-Hosting: Adding SMTP support for self-hosting, in addition to SendGrid. 👏 Thanks @dayByte for the idea. (#365).
- Self-Hosting: Simplification of SendGrid setup, by removing the need of creating email templates. They are now hardcoded.
- Self-Hosting: Improving email templates
- Improving Text and Markdown exports on Summary Mode. 👏 Thanks Jakob J for the idea. (#384).
Version 4.13.0
- Adding the option of paying for Retrospected Pro annually, getting one month free in the process
- Update prices, especially for USD
- Make the integration tests less brittle by using specific attributes
- Upgrade (finally!) to React-Router v6.
- Self-Hosting: Allow an administrator to disable Anonymous Logins (to force users to use regular accounts).
Version 4.12.1 (hotfix)
- Adding users to a Pro Team subscription wasn't working anymore, because of Webpack 5.
Version 4.12.0
- Changing naming convention for the database. All fields and tables are now
snake_case
. - Simplified the configuration of TypeORM, removed the generation of
ormconfig.json
. - Added Integration tests using Cypress to catch Docker-specific errors and have some basic smoke tests.
- Upgrade to
react-scripts
(Create React App) 5.0.0 - Upgrade jQuery (for the marketing / home page), to 3.6.0 for security reasons
- ⏫ Upgrading dependencies
Version 4.11.5 (hotfix)
- Making secure cookies an optional setting, as they won't work unless it is hosted on HTTPS.
Version 4.11.4 (hotfix)
- Fixing a migration issue when installing from scratch
Version 4.11.3 (hotfix)
- Adding hardcoded licence for a specific self-hosted client.
Version 4.11.2 (hotfix)
- Encrypt chat messages on encrypted sessions
- Ensure long chat messages are displayed across multiple lines
Version 4.11.1 (hotfix)
- Reverting the migration from react-scripts (create-react-app) 5.0.0 to 4.0.3. The new version includes Webpack 5, which causes issues with polyfills. The issue should be fixed in 5.0.1 which is not available yet.
Version 4.11.0
- Adding a chat functionality. Send messages to your colleagues without having to use Slack or any other external tool!
- Add the author (when the "Show Author" option is enabled) in the summary panel. 👏 Thanks @hmlkao for the idea. (#336).
- Deprecate Yarn Workspaces to limit dependency sharing
- ⏫ Upgrade most dependencies for security reasons
- Upgrade Nginx image to fix security issues
- Force secure cookies on production
- Add Trivy vulnerability scanner on CI
Version 4.10.0
- Add better GDPR compliance, with the right to be forgotten: allows a user to delete all of their data
- Add the ability for users to