Nice work so far. I checked out some of the demos and test apps.

Most would compile using Lazarus without any setup what-so-ever, Bravo!

Had issues with 2 demos though;

- Fonts demo for Lazarus seemed to have messed up project files and wouldn't build.
- Components demo compiled ok. It seemed to start up ok, but crashed and closed it's self shortly after starting up. Here is the log file generated:

Code:
1:01 phxBase: Initializing Phoenix...
1:01 phxBase: Phoenix version: 1.0
1:01 phxBase: Phoenix build  : 2007-08-06
1:01 phxScreen.init: Initializing GLFW.
1:01 phxScreen.init: GLFW version: 2.5.0
1:01 phxTexture: Creating FreeImage texture loader.
1:01 phxTexture: FreeImage version: 3.9.2
1:01 TPHXScreen.Open: Opening the window: 800x600 WINDOWED
1:01 TPHXScreen.Open: Initializing OpenGL.
1:01 TPHXScreen.Open: OpenGL vendor    : ATI Technologies Inc.
1:01 TPHXScreen.Open: OpenGL renderer  : RADEON XPRESS 200M Series SW TCL x86/SSE2
1:01 TPHXScreen.Open: OpenGL version   : 1.4.5220 WinXP Release
1:01 TPHXScreen.Open: OpenGL extensions: GL_ARB_multitexture GL_EXT_texture_env_add GL_EXT_compiled_vertex_array GL_S3_s3tc GL_ARB_depth_texture GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_multisample GL_ARB_occlusion_query GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_transpose_matrix GL_ARB_vertex_blend GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_envmap_bumpmap GL_ATI_fragment_shader GL_ATI_separate_stencil GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_ATI_texture_mirror_once GL_ATI_vertex_streams GL_ATIX_texture_env_combine3 GL_ATIX_texture_env_route GL_ATIX_vertex_shader_output_point_size GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_clip_volume_hint GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_object GL_EXT_multi_draw_arrays GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_texgen_reflection GL_EXT_texture3D GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_vertex_array GL_EXT_vertex_shader GL_HP_occlusion_test GL_NV_blend_square GL_NV_occlusion_query GL_NV_texgen_reflection GL_SGI_color_matrix GL_SGIS_generate_mipmap GL_SGIS_multitexture GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_WIN_swap_hint WGL_EXT_extensions_string WGL_EXT_swap_control 
1:01 TPHXImage.LoadImage: Loading image: background.png
1:01 TPHXTextureManager.BuildTexture: Texture size 256x256 (2048) Format GL_RGB
1:01 TPHXImage.LoadImage: Loading image: Save Picture.png
1:01 TPHXTextureManager.BuildTexture: Texture size 32x32 (2048) Format GL_RGBA
1:01 TPHXFont.LoadFont: Loading font: Arial16.phxfnt
1:01 TPHXTextureManager.BuildTexture: Texture size 128x128 (2048) Format GL_RGBA
1:01 TPHXTextureManager.BuildTexture: Texture size 512x512 (2048) Format GL_RGBA
1:01 TPHXComponentEngine.LoadFromStream: Loading gui from stream...
Once you've fixed these please let me know, I'm making up a small spotlight video of the library to show off on my PascalGameDev channel on YouTube. (Random impulse, and it required very little of my time. )


Oh and I'd recommend that you also setup a small Font/GUI Skin repository for users of your library to contribute to and access openly. It might help build a little sub-community around the library. Plus it'll make new people to the library have more than zero options when trying out your components unit.