All Projects → mjansson → Foundation_lib

mjansson / Foundation_lib

Licence: unlicense
Cross-platform public domain foundation library in C providing basic support data types and functions to write applications and games in a platform-independent fashion.

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Foundation lib

Hela
🍦 Powerful software development experience and management. Enhancing @tc39 JS, @denoland and @nodejs, because we need a bit of magic. ✨ You can think of it as Cargo for the JavaScript ecosystem.
Stars: ✭ 320 (+28.51%)
Mutual labels:  platform, cross-platform
Cgofuse
Cross-platform FUSE library for Go - Works on Windows, macOS, Linux, FreeBSD, NetBSD, OpenBSD
Stars: ✭ 245 (-1.61%)
Mutual labels:  cross-platform
Dialog
Simple cross-platform dialog API for go-lang
Stars: ✭ 237 (-4.82%)
Mutual labels:  cross-platform
Asciimatics
A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
Stars: ✭ 2,869 (+1052.21%)
Mutual labels:  cross-platform
Gdx Rpg
java & libgdx制作的RPG游戏! an RPG by java and LibGDX
Stars: ✭ 239 (-4.02%)
Mutual labels:  cross-platform
Api.gouv.fr
Liste les API disponibles au sein de l'administration française
Stars: ✭ 243 (-2.41%)
Mutual labels:  platform
Qhotkey
A global shortcut/hotkey for Desktop Qt-Applications
Stars: ✭ 234 (-6.02%)
Mutual labels:  cross-platform
Panda3d
Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU
Stars: ✭ 3,035 (+1118.88%)
Mutual labels:  cross-platform
Ecere Sdk
Ecere SDK (eC Language, Ecere IDE, Cross platform GUI, graphics, and more) — http://ec-lang.org —
Stars: ✭ 244 (-2.01%)
Mutual labels:  cross-platform
Devicehive Java Server
DeviceHive Java Server
Stars: ✭ 241 (-3.21%)
Mutual labels:  platform
Rsock
The best companion of kcptun
Stars: ✭ 242 (-2.81%)
Mutual labels:  cross-platform
Classicuo
ClassicUO - an open source implementation of the Ultima Online Classic Client.
Stars: ✭ 239 (-4.02%)
Mutual labels:  cross-platform
Pillar Valley
👾A cross-platform video game built with Expo, three.js, and Firebase! 🎮🕹
Stars: ✭ 242 (-2.81%)
Mutual labels:  cross-platform
Hprose Html5
Hprose is a cross-language RPC. This project is Hprose 2.0 Client for HTML5
Stars: ✭ 237 (-4.82%)
Mutual labels:  cross-platform
Isar
Super Fast Cross Platform Database for Flutter & Web Apps
Stars: ✭ 236 (-5.22%)
Mutual labels:  cross-platform
Microservices Platform
基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离的企业级微服务多租户系统架构。并引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易,适合学习和企业中使用。真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案,面向互联网设计同时适合B端和C端用户,支持CI/CD多环境部署,并提供应用管理方便第三方系统接入;同时还集合各种微服务治理功能和监控功能。模块包括:企业级的认证系统、开发平台、应用监控、慢sql监控、统一日志、单点登录、Redis分布式高速缓存、配置中心、分布式任务调度、接口文档、代码生成等等。
Stars: ✭ 3,274 (+1214.86%)
Mutual labels:  platform
Renamer
Rename files in bulk.
Stars: ✭ 240 (-3.61%)
Mutual labels:  cross-platform
Canvas
A Laravel publishing platform
Stars: ✭ 2,838 (+1039.76%)
Mutual labels:  platform
Tmxlite
lightweight C++14 parser for Tiled tmx files
Stars: ✭ 248 (-0.4%)
Mutual labels:  cross-platform
Dollchan Extension Tools
The best way to browse imageboards
Stars: ✭ 247 (-0.8%)
Mutual labels:  cross-platform

Foundation Library - Public Domain

This library provides a cross-platform foundation library in C providing basic support data types and functions to write applications and games in a platform-independent fashion. It provides:

  • Abstractions and unification of basic data types
  • Pluggable memory management
  • Threads and synchronization
  • Atomic operations
  • Timing and profiling
  • Object lifetime management
  • Events processing
  • File system access
  • Dynamic library loading
  • Process spawning
  • Logging, error reporting and asserts
  • String handling in UTF-8 and UTF-16
  • Murmur hasing and statically hashed strings
  • Math support for 32 and 64 bit floats
  • JSON/SJSON parser
  • SHA256/SHA512 digest
  • Application, environment and system queries and control
  • Regular expressions
  • Exception utilities (SEH, signals)

It is written with the following API design principles in mind:

  • Consistent. All functions, parameters and types should follow a well defined pattern in order to make it easy to remember how function names are constructed and how to pass the expected parameters.
  • Orthogonal. A function should not have any side effects, and there should be only one way to perform an operation in the system.
  • Specialized. A function in an API should perform a single task. Functions should not do completely different unrelated tasks or change behaviour depending on the contents of the variables passed in.
  • Compact. The API needs to be compact, meaning the user can use it without using a manual. Note though that "compact" does not mean "small". A consistent naming scheme makes the API easier to use and remember.
  • Contained. Third party dependencies are kept to an absolute minimum and prefer to use primitive or well-defined data types.

Platforms and architectures currently supported:

  • Windows (x86, x86-64), Vista or later
  • MacOS X (x86-64), 10.7+
  • Linux (x86, x86-64, PPC, ARM)
  • FreeBSD (x86, x86-64, PPC, ARM)
  • iOS (ARMv7, ARMv7s, ARMv8/AArch64), 6.0+
  • Android (ARMv6, ARMv7, ARMv8/AArch64, x86, x86-64, MIPS, MIPS64)
  • Raspberry Pi (ARMv6)

Please consider our Patreon - https://www.patreon.com/rampantpixels

The latest source code maintained by Rampant Pixels is always available at
https://github.com/rampantpixels/foundation_lib

Pre-generated documentation in HTML format for the latest release can be found at
http://rampantpixels.github.io/foundation_lib/doc

Master branch is used for stable releases. Development is done in feature branches from the develop branch
https://github.com/rampantpixels/foundation_lib/tree/develop

Cross-platform build system uses Ninja
https://ninja-build.org/

Test suite coverage: codecov.io

This library is put in the public domain; you can redistribute it and/or modify it without any restrictions.

Created by Mattias Jansson / Rampant Pixels - http://www.rampantpixels.com

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].