Open-sourcing @CaptainFact_io backend (Elixir, Phoenix, Absinthe)
<img src=”https://captainfact.io/assets/img/banner.jpg”/>
A year and a half ago started https://captainfact.io - a collaborative, real-time fact-checking tool for YouTube videos. The website allow people to work together to confirm, refute and contextualize statements made in a video. A browser extension then brings down the community’s sources directly on the content by injecting them into YouTube’s player ( preview ).
The project is non-profit ( we accept donations through OpenCollective ). We want to work in full transparency and while the website and the extension have been open-source for a long time, we still needed to release the API. It is now available on Github: https://github.com/CaptainFact/captain-fact-api.
The project is organized as an umbrella app and based on Phoenix
+ Absinthe
. Some of its core features are:
- A REST API (progressively migrated to GraphQL with Absinthe)
- A Websocket API to work on videos in real-time
- A reputation system with associated permissions and daily limits
- A collective moderation system with flag reasons
- Users actions history
- Achievements
- An invitation system (disabled by default)
Contributors and supporters are welcome and we hope the Elixir community will benefit from this project. As of today CaptainFact only has partnerships with French Youtubers and most of the videos presented on the platform are in French too. If you’re interested in contacting your favourite Youtuber to convince him / her that his videos should be added for sourcing on CaptainFact, contact us and we’ll tell you everything you need to know to get started.
Read next Blazing fast Elixir configuration