Commit 51c77260 authored by Moises Bensadon's avatar Moises Bensadon
Browse files

Update README.md

parent 41c49399
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -171,15 +171,15 @@ The combination of trie structures for perplexity calculations, priority queues

### Graphical User Interface that highlights suspicious textual elements in a given text - 15%

The `MainApp` class provides a nice Graphical User Interface using Java Swing, ensuring cross-platform compatibility and a user-friendly interface. `BorderLayout` allows for a clean layout with input fields, ‘run’ button, and display areas. `JComboBox` presents a drop-down menu while dynamically alters the ‘run’ button depending on the user’s choice of module. This keeps the interface’s visual appearance clean while allowing user selections. Inputs are managed through `JTextField’, which accepts URLs, paths to files, and texts. With the corresponding module output in the `JtextArea` complimented by the `JScrollPane` for easy viewing of large outputs from the program.
The `MainApp` class provides a nice Graphical User Interface using Java Swing, ensuring cross-platform compatibility and a user-friendly interface. `BorderLayout` allows for a clean layout with input fields, ‘run’ button, and display areas. `JComboBox` presents a drop-down menu while dynamically alters the ‘run’ button depending on the user’s choice of module. This keeps the interface’s visual appearance clean while allowing user selections. Inputs are managed through `JTextField’, which accepts URLs, paths to files, and texts. With the corresponding module output in the `JtextArea` complimented by the `JScrollPane` for easy viewing of large outputs from the program. We also used `JProgressBar` to show how much of the selected task has been completed thus far and how much is left.

Furthermore, the GUI for the checker highlights significant parts of the text using the `Highlighter` and `HighlightPainter` functions, enhancing usability by visually distinguishing potentially suspicious texts in the analysis outputs. Other nice features include, the way intensive processing tasks are executed in a separate thread, keeping the interface responsive. And how on startup, the application checks for necessary user specific configurations, prompting users for initial setup if needed, ensuring the tool is ready for proper operation.

### Extend your crawler to crawling social media posts of some large network (reddit) - 15%
### Extend your crawler to crawling social media posts of some large network (Reddit) - 15%

Continuing with features of the crawler, we expanded its capabilities to be able to access Reddit, one of the largest social media sites/forums online. 

Our implementation involves passing a flag (--social) and a Reddit username into the command line interface. The name is then appended onto a complete URL and the page is added to the URL queue.
Our implementation involves passing a flag (--social) and a subreddit name into the command line interface. The name is then appended onto a complete URL and the page is added to the URL queue.

With regards to processing these user pages, the posts with which they have interacted are found via identifying specific “shreddit” tags that are accessible from the web data. This is accomplished in a brute force manner by looping through the entirety of the page. The links to these posts are then added to the URL queue and processed using the standard method. In the case where the user has not interacted with any posts (resulting in 0 links being added to the queue), the reddit homepage is added instead as a seed URL.

@@ -189,6 +189,14 @@ The system was designed to be language-agnostic, allowing for the analysis and c

Text corpses for German, Italian, and Portuguese were obtained from the Leipzig Corpora Collection. These corpses are used to train the Trie structure whenever you switch language, allowing for users to test how the system analyzes and corrects text in these languages.

### Provide a graphical human feedback system for deciding among possible phrase corrections, with feedback into the suspicion levels reported by the system. - 15%

The implemented pop-up gives the user the ability to choose which corrections provided by the corrector is best. This correction is then added to the trie node and used for future suggestions. This allows the user to have more control over the suggestions provided by the corrector and improves the user experience by making the corrector more accurate.


# Total: 115%


## Code

Repository: https://agile.bu.edu/gitlab/ec504/ec504_projects/group7/-/tree/master