A terminal-based web browser, written with Java, using Lanterna & Jsoup.
Settings configurable in-browser.
To be added:
Local file browsing
Basic text editing
Audio playing (maybe)
Abinav Kumar
Check their project out: Manga Bot
Youssef
Check their projects out: UnderTerm, kris-watcher, ReeTui
DevKiD
Check their projects out: Moo - A mathematically framework, Readers, CANSAT
Nirvaan
Whoops! Looks like they don't have a project yet. Maybe ask them to start one?
awsome-webdev
Check their project out: Open Cloud
csd4ni3l
Check their projects out: fractal-viewer, Music Player, csd4ni3l-browser, aimtrainer, Game Of Life, ShatterStack
swiss
Check their projects out: portfolio2.0 - personal projects thing, temporary portfolio, audio visualizer, static site - mimic
HQ2000
Check their projects out: MoveTimer, Sacrifice After Sacrifice, Concurrent File Crawler, Terminal Sudoku, AGE, CLG - Command Line Gambling, My (Special) Website
Kyle B
Check their projects out: Hangman, To Do List CLI , GUI Dictionary App, Learning Fabric Modding, The Restless Dungeon, Platformer World, Portfolio Website, Memory Match!, Dictionary, PyWeather
Kingsuper195
Check their projects out: The 404, Office Kit, Middle Earth on Europe, The Parting of the Mountain Waters, Flop, Kingsuper195 website, Lego Docs, QuizX, Termrender, Beret Guy's CompanyName.Website
Owen Lusis
Check their projects out: Settings Creator, Site Blocker, Book Recommendations Website
Yabir Baldizon
Check their project out: Baba is you: playdate port
Oliver
Check their projects out: Branch YSWS, CyberKit, CourseNotes, opott.uk, Gradient Club
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
Some of this devlog is from like a month ago. What I've done most recently is start unifying handlers for pages bc it seems kinda pointless to have very similar classes do almost the exact same thing. Also moved over to a config system I designed for my Minecraft plugins, its more clean.
The improved renderer still needs a lot of work, but I'm going to save that for next ship. Did some work, renamed the browser to Karatasi (meaning paper in Swahili), and preparing to ship.
Did some basic refactoring, including setting the new SimpleRenderer background to white instead of gray. Eventually I'll try to set background colors based off page CSS.
This doesn't look pretty but it's some progress. I added (working for the most part) hyperlinks. I did some more work with scrolling-now you cant scroll down forever, and you cant scroll over the top of the page. I need to work on making all Components render at their fullsize no matter the window size, in the screenshot they're still not even in their full size.
Spent a lot of time working on a second way of rendering things, which would make the browser much more usable. Wrote some renderers for certain elements. Panels, which is what all page content is displayed arent scrollable normally, so thats been a problem. Ive worked on making a scrollable version, and Ive got something going so far. Its not perfect, but its a start.
Got the config editor working fully, file saving, loading & all. Had to fix some issues with the Configuration class.
Finished most config implementation, still need to write the editor for it though. Moved logic for the back and forward buttons in the toolbar to a separate class to declutter the Screen class, probably going to move more things out of the Screen class too.
Started work on making a configuration, which will be editable in the browser. Worked on writing classes for it, and started on the file itself.
Implemented different Handlers for filetypes over the web, and added HTML support for files that are stored on the jar. Made the home page be one thats on the jar locally, so it can still load w/o internet
Did some refactoring with pages, added html support for jar files, working on moving over to a new system so less sites are blocked from loading by cloudflare
Among other things, reworked loading documents and added a way to load files that are stored in the jar, with jar:/ just like https://. Planning on adding file:/ to browse local files next. Also started reworking error page loading, so I wrote a new Exception that all Destinations will throw if they can't be loaded.
Messed around with the ASCII image library, figured out sizing, might look at adding small images to webpages. For now, if a user enters an address to a image file the ASCII image converter will be used.
Tried adding image rendering w/ an ASCII image generator lib I found on GitHub, but the images were too large. Might make it so that the generator is used if you enter a link to an actual image. Added true element nesting w/ recursion, and I worked on changing some specific elements so it works better w/ the nesting & boxing.
Moved page loading to a different thread so the whole application doesnt hang if a website is slow or not responding, added a Loading Page with a progress bar.
Various small changes, added full boxing around text elements like , , etc. Need to work on nesting now
Fixed image tags, added link rendering, other work, attempted to add a progress bar but the page loads too fast
Did some additional formatting work, got to implement formatting for more tag types, and figure out nesting
Worked on implementing the PrimitiveTextBoxRenderer - a solely text based renderer, so I can better understand jsoup. Formatting doesnt really work right now. Also wrote a html page on my website to act as the landing page when you launch the application
Worked on an error message page, updated code for the main browser screen
Like the word art :p
Worked on a main browser page, wrote a tool bar and just setup the web page so it would print out the html code, no processing
Worked w/ Maven so I can compile & test outside of my IDE, changed a few things for the url entry UI, and wrote a method to normalize urls so more urls wont throw exceptions
Worked on taking the input from the text input page and processing it, for now just printing it out.
Interesting project!