All Projects → chrisdone → Vado

chrisdone / Vado

Licence: other
A demo web browser engine written in Haskell

Programming Languages

haskell
3896 projects

Projects that are alternatives of or similar to Vado

Driftwood
Driftwood 2D Tiling Game Engine and Development Suite
Stars: ✭ 23 (-91.32%)
Mutual labels:  sdl, sdl2
EnttPong
Built for EnTT, at the request of the developer as a demo.
Stars: ✭ 51 (-80.75%)
Mutual labels:  sdl, sdl2
Fairtris
Clone of the official classic Tetris® game for the NES console, intended for Windows and Linux systems. It implements the original mechanics and includes many regional versions and several RNGs (all in one executable).
Stars: ✭ 30 (-88.68%)
Mutual labels:  sdl, sdl2
sdl stb font
Renders text using STB_Truetype in pure SDL
Stars: ✭ 40 (-84.91%)
Mutual labels:  sdl, sdl2
ArchGE
A 2D and 3D C++ Game Engine using SDL2 and OpenGL
Stars: ✭ 15 (-94.34%)
Mutual labels:  sdl, sdl2
ffi-sdl
PHP FFI SDL bindings
Stars: ✭ 23 (-91.32%)
Mutual labels:  sdl, sdl2
sdl12-compat
An SDL-1.2 compatibility layer that uses SDL 2.0 behind the scenes.
Stars: ✭ 99 (-62.64%)
Mutual labels:  sdl, sdl2
Gwork
Skinnable GUI with useful widget collection. Fork of GWEN.
Stars: ✭ 179 (-32.45%)
Mutual labels:  sdl2, sdl
sdlpp
C++ wrapper for SDL2
Stars: ✭ 37 (-86.04%)
Mutual labels:  sdl, sdl2
combatris
A "perfect" implementation of an old classic
Stars: ✭ 20 (-92.45%)
Mutual labels:  sdl, sdl2
gnuboy
latest version of original laguna source, with a handful fixes for modern compilers and systems
Stars: ✭ 70 (-73.58%)
Mutual labels:  sdl, sdl2
BonEngineSharp
A simple and fun SDL-based game engine in C#.
Stars: ✭ 16 (-93.96%)
Mutual labels:  sdl, sdl2
nox-decomp
Unofficial Nox (2000) port to Linux using decompiled code from https://playnox.xyz
Stars: ✭ 21 (-92.08%)
Mutual labels:  sdl, sdl2
SDL.zig
A shallow wrapper around SDL that provides object API and error handling
Stars: ✭ 102 (-61.51%)
Mutual labels:  sdl, sdl2
Haskanoid
A breakout game in Haskell using SDL and FRP, with Wiimote and Kinect support.
Stars: ✭ 242 (-8.68%)
Mutual labels:  sdl2, sdl
guisan
A C++ SDL2 user interface library based on guichan. ~~~~ Nov, 2021 - This project is not abandoned, just not under active development. Pull requests will be accepted and new releases will be generated for new features / bug fixes.
Stars: ✭ 54 (-79.62%)
Mutual labels:  sdl, sdl2
Ffmpeg Video Player
An FFmpeg and SDL Tutorial.
Stars: ✭ 149 (-43.77%)
Mutual labels:  sdl2, sdl
Div Games Studio
Complete cross platform games development package, originally for DOS but now available on modern platforms.
Stars: ✭ 168 (-36.6%)
Mutual labels:  sdl2, sdl
OCamlSDL2
OCaml interface to SDL 2.0 (for Linux, Windows, MacOS, and ChromeBook)
Stars: ✭ 42 (-84.15%)
Mutual labels:  sdl, sdl2
faur
⚒️✨ My personal C games framework. 2D graphics, sound, inputs, states, ECS, and misc utils for data, files, math, memory, strings, time, and more. Builds for Linux, Windows, Web, and embedded devices.
Stars: ✭ 55 (-79.25%)
Mutual labels:  sdl, sdl2

vado

Vado is Italian for I go.

This is a demonstration program that is able to load a web page up and render it like in the early 90's. It supports laying out text, different font sizes for headings, inline and block elements, hyperlinks, bold and italics. It supports mousewheel scrolling, too.

I wrote this in a couple evenings, because it seemed straight-forward to do so given the libraries available today. That's a good sign for Haskell. Also, there's an inarticulate gut feeling I have that tells me maybe it's worth celebrating these days in which the web is still viewable in its simplest, earliest form.

The project was possible thanks to a few established Haskell packages:

This project is intended to be easy to build and cross-platform. If you succeed in building this package on a platform that isn't listed in the Building section, please open a PR with those instructions. It uses the cross-platform SDL package, and the probably-less-so cross-platform Cairo package for rendering text.

There's some groundwork for rendering boxes, padding, etc. but no attempt has been made to implement that. One could use the language-css package to parse CSS and add styling to elements.

Demo

Demo video

Building

Get Stack for building Haskell projects.

OS X instructions:

$ brew install pkg-config libffi cairo sdl2 sdl2_image
$ export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig
$ stack install --install-ghc gtk2hs-buildtools
$ stack install

Ubuntu Linux instructions:

$ sudo apt-get install libcairo2-dev libsdl2-dev libsdl2-image-dev
$ stack install --install-ghc gtk2hs-buildtools
$ stack install

FreeBSD instructions:

NOTE: These instructions have not been updated to include SDL-image. If you use FreeBSD, please contribute changes to these instructions!

$ pkg install cairo
$ pkg install sdl2
$ stack install --install-ghc gtk2hs-buildtools
$ stack install

Windows instructions

$ stack exec -- pacman -Sy mingw-w64-x86_64-cairo mingw-w64-x86_64-pkg-config mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_image
$ stack install --install-ghc gtk2hs-buildtools
$ stack install

Running

It accepts an initial home page URL:

$ vado <complete URL including https or http>

It doesn't support back/forward or other history features.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].