Inspiration

I was inspired to build VerifyX after watching misinformation destroy trust in my own community. My family members shared fake news on WhatsApp. My friends fell for manipulated images on social media. My colleagues struggled to separate facts from opinions. I realized that most people don't have a simple, free, and reliable tool to verify what they see online. That is not okay. I believe that access to truth is a fundamental right, not a privilege for journalists and researchers. Everyone deserves to know if what they are reading is real or fake. So I built VerifyX, an AI-powered platform that puts the power of verification in everyone's hands.

What it does

VerifyX is an AI-powered fact-checking platform that helps users verify news, claims, and images instantly. Users can enter any claim, news story, or upload an image. The platform then breaks down the input using natural language processing, searches for supporting and opposing evidence from multiple sources, calculates a confidence score based on source credibility and diversity, and generates a detailed report. VerifyX offers five main features: Investigate for full claim analysis, Image Investigation for photo forensics, Prove It True for finding supporting evidence only, Prove It False for finding opposing evidence only, and Truth Battle which displays evidence from both sides side by side so users can compare and decide for themselves. The platform supports both Arabic and English, making it accessible to millions of users across the Middle East and beyond.

How we built it

I built VerifyX in four phases. In phase one, I spent two weeks researching existing fact-checking platforms like Snopes, FactCheck.org, and PolitiFact. I identified critical gaps including no bilingual support, limited image analysis, no interactive features, and no community aspect. I defined my core features and created wireframes. In phase two, I designed a scalable three-layer architecture with a React.js frontend with TypeScript and TailwindCSS, a Node.js backend with Express, and Python AI microservices for NLP and image analysis. I used PostgreSQL for the database and Redis for caching. The AI layer uses SpaCy for bilingual NLP processing, OpenCV and TensorFlow for image forensics, and multiple APIs including Google Custom Search API and NewsAPI.org for source discovery. In phase three, I built each feature step by step. The Investigate section takes user input, processes it with NLP, extracts keywords, searches multiple sources, compares them, calculates a confidence score using the formula Confidence Score = sum of (w_i * c_i) divided by n where w_i is the weight of each source and c_i is the credibility factor, and generates a detailed report. The Image Investigation section uploads images, extracts metadata, runs Error Level Analysis, performs reverse image search, and checks credibility. Prove It True searches only for supporting evidence. Prove It False searches for opposing evidence. Truth Battle runs dual searches and displays evidence side by side for the user to compare and decide. The Community section allows sharing, voting, and discussions. The Archive stores all past investigations. In phase four, I tested everything extensively, fixed bugs, optimized performance, and deployed on Google Cloud Platform.

Challenges we ran into

I faced several significant challenges. The first was Arabic NLP. Arabic text has multiple dialects, complex diacritics, and rich morphology, and most NLP models are built for English. I solved this by using bilingual NLP models and building custom tokenization specifically for Arabic text with support for different dialects. The second challenge was source credibility. Determining which sources are trustworthy is difficult because not all websites are equal. I built a domain authority scoring system that ranks sources based on historical accuracy, domain reputation, source diversity, and cross-referencing with known fact-checkers. The third challenge was real-time performance. Searching multiple sources and analyzing images takes significant time, but users want instant results. I implemented Redis caching for frequent searches, asynchronous processing for image analysis, parallel API calls to reduce wait time, and lazy loading for better frontend performance. The fourth challenge was image manipulation detection. No single technique detects all types of image manipulation, and deepfakes are getting harder to spot. I combined multiple forensic techniques including Error Level Analysis, metadata extraction and analysis, reverse image search, and face detection algorithms. This multi-layered approach gives better accuracy than any single method. The fifth challenge was avoiding bias. I needed to avoid showing only one side of the story and remain neutral. I made a philosophical decision that the platform provides tools, not final verdicts. I always show supporting evidence on one side and opposing evidence on the other, with the confidence score as a guide, not a judgment, and then I let the user decide. The sixth challenge was bilingual support. The interface and content must work seamlessly in both Arabic and English. I built RTL support for Arabic, language detection in user input, bilingual source search, and translated UI components.

Accomplishments that we're proud of

I am proud of several key accomplishments. First, building a fully functional bilingual platform that supports both Arabic and English seamlessly, making fact-checking accessible to millions of Arabic speakers who previously had no such tool. Second, creating the Truth Battle feature, which is a unique and engaging way to present evidence from both sides and let users make their own informed decisions. This interactive approach sets VerifyX apart from traditional fact-checking websites that simply give a verdict. Third, successfully integrating multiple AI technologies including NLP, image forensics, and source credibility scoring into one cohesive platform. Fourth, achieving real-time performance with complex searches and image analysis through smart caching and asynchronous processing. Fifth, building a community section that allows users to share investigations, vote, and discuss results, creating an ecosystem of collaborative fact-checking. Sixth, developing an archive system that stores all past investigations for future reference. Seventh, implementing a domain authority scoring system that helps users understand the reliability of different sources. Finally, I am proud that VerifyX is not just a tool but a movement toward truth, transparency, and awareness in a world flooded with misinformation.

What we learned

Building VerifyX taught me a lot across multiple disciplines. In Natural Language Processing, I learned how to break down claims into key entities and keywords, process Arabic text with complex morphology and multiple dialects, and extract meaning from user input to guide intelligent searches. I learned about named entity recognition for identifying people, places, and organizations in text. In fact-checking methodologies, I learned the importance of using multiple independent sources rather than relying on a single source. I learned how to calculate a confidence score based on source credibility, diversity, and agreement. I learned that source credibility depends on factors like domain authority, historical accuracy, and cross-referencing with known fact-checkers. In image forensics, I learned about detecting manipulation using Error Level Analysis, extracting and analyzing metadata from images, using reverse image search to trace original sources, and combining multiple techniques for better accuracy. I learned that no single technique catches all fakes, so a multi-layered approach is essential. In user experience design, I learned that people need simplicity, not complexity. I learned that showing both sides of an argument builds trust, visual evidence is more powerful than text alone, and making fact-checking engaging keeps users coming back. In technical integration, I learned how to work with multiple APIs simultaneously, build a seamless bilingual system with RTL support, handle asynchronous processing for performance, and use caching strategies to improve speed. In ethical AI, I learned about the responsibility of labeling content as true or false, the importance of transparency in how conclusions are reached, and how to avoid bias in source selection. I learned that the platform should provide tools, not final verdicts, and let the user decide.

What's next for VERIFYX

I have ambitious plans for the future of VerifyX. First, I am developing mobile applications for iOS and Android to make fact-checking accessible on the go. Second, I am building a browser extension that will allow users to fact-check any news or claim instantly while browsing the web. Third, I am working on real-time fact-checking during live events such as news broadcasts, political debates, and sporting events. Fourth, I am implementing crowdsourced verification where community members can flag and verify claims, with a reputation system to reward trusted contributors. Fifth, I am adding more advanced image forensics including deepfake detection using state-of-the-art machine learning models. Sixth, I am expanding language support to include French, Spanish, German, and other major languages. Seventh, I am integrating with messaging platforms like WhatsApp and Telegram through dedicated bots so users can fact-check directly in their chats. Eighth, I am developing an API for third-party developers to integrate VerifyX capabilities into their own applications, news platforms, and social media networks. Ninth, I am building a verification badge system for websites and social media accounts that pass credibility checks. Tenth, I am exploring partnerships with news organizations, universities, and fact-checking networks to expand our source database and credibility scoring. Finally, I am continuously improving the AI models and algorithms to increase accuracy, speed, and reliability. The ultimate goal is to make VerifyX the go-to platform for truth verification worldwide.

Built With

Share this project:

Updates